{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "%matplotlib inline\n",
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns\n",
    "\n",
    "sns.set_context(\"poster\")\n",
    "sns.set_style(\"ticks\")\n",
    "\n",
    "from collections import Counter, defaultdict\n",
    "from itertools import count, chain\n",
    "import random\n",
    "import math\n",
    "\n",
    "import dynet as dy\n",
    "import numpy as np\n",
    "\n",
    "import pandas as pd\n",
    "\n",
    "from gensim.models.word2vec import Word2Vec\n",
    "\n",
    "from tqdm import tnrange, tqdm_notebook"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# format of files: each line is \"word1/tag2 word2/tag2 ...\"\n",
    "train_file=\"data/cleaned/train.BIEOU.tsv\"\n",
    "test_file=\"data/cleaned/dev.BIEOU.tsv\"\n",
    "\n",
    "MAX_LIK_ITERS = 3\n",
    "SMALL_NUMBER = -1e10\n",
    "MARGIN = 0\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "class Vocab:\n",
    "    def __init__(self, w2i=None):\n",
    "        if w2i is None: w2i = defaultdict(count(0).next)\n",
    "        self.w2i = dict(w2i)\n",
    "        self.i2w = {i:w for w,i in w2i.iteritems()}\n",
    "    @classmethod\n",
    "    def from_corpus(cls, corpus):\n",
    "        w2i = defaultdict(count(0).next)\n",
    "        for sent in corpus:\n",
    "            [w2i[word] for word in sent]\n",
    "        return Vocab(w2i)\n",
    "\n",
    "    def size(self): \n",
    "        return len(self.w2i.keys())\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "BIO={\n",
    "    \"E\": \"I\",\n",
    "    \"U\": \"B\"\n",
    "}\n",
    "def read(fname, use_BIO=False, notypes=False):\n",
    "    \"\"\"\n",
    "    Read a NER-tagged file where each line is of the form \"word1 tag2\\nword2 tag2 ...\"\n",
    "    Yields lists of the form [(word1,tag1), (word2,tag2), ...]\n",
    "    \"\"\"\n",
    "    with file(fname) as fh:\n",
    "        sent = []\n",
    "        for line in fh:\n",
    "            line = line.strip()\n",
    "            if line == \"\":\n",
    "                if sent:\n",
    "                    yield sent\n",
    "                sent = []\n",
    "                continue\n",
    "            if line:\n",
    "                line = line.split(\"\\t\")\n",
    "                if notypes:\n",
    "                    line[1] = line[1][:1]\n",
    "                if use_BIO:\n",
    "                    tag = line[1]\n",
    "                    if tag[0] in BIO:\n",
    "                        line[1]=BIO[tag[0]] + tag[1:]\n",
    "                line = tuple(line)\n",
    "                sent.append(line)\n",
    "    if sent:\n",
    "        yield sent\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train: 2394, Test: 1000\n"
     ]
    }
   ],
   "source": [
    "train=list(read(train_file, notypes=True))\n",
    "test=list(read(test_file, notypes=True))\n",
    "print(\"Train: %s, Test: %s\" % (len(train), len(test)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[(\"'\", 'O'), ('Breaking', 'B'), ('Dawn', 'E'), (\"'\", 'O'), ('Returns', 'O'), ('to', 'O'), ('Vancouver', 'U'), ('on', 'O'), ('January', 'O'), ('11th', 'O'), ('http://bit.ly/dbDMs8', 'O')]\n"
     ]
    }
   ],
   "source": [
    "print(train[2])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>0</th>\n",
       "      <th>1</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>@ls_n</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>perhaps</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>,</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>but</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>folks</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>may</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>find</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>something</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>in</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>the</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>gallery</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>that</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>is</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>helpful</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>in</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>their</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>day-to-day</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>work</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>as</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>well</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>.</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>Even</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>just</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>to</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
       "      <td>use</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>it</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>26</th>\n",
       "      <td>.</td>\n",
       "      <td>O</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "             0  1\n",
       "0        @ls_n  O\n",
       "1      perhaps  O\n",
       "2            ,  O\n",
       "3          but  O\n",
       "4        folks  O\n",
       "5          may  O\n",
       "6         find  O\n",
       "7    something  O\n",
       "8           in  O\n",
       "9          the  O\n",
       "10     gallery  O\n",
       "11        that  O\n",
       "12          is  O\n",
       "13     helpful  O\n",
       "14          in  O\n",
       "15       their  O\n",
       "16  day-to-day  O\n",
       "17        work  O\n",
       "18          as  O\n",
       "19        well  O\n",
       "20           .  O\n",
       "21        Even  O\n",
       "22        just  O\n",
       "23          to  O\n",
       "24         use  O\n",
       "25          it  O\n",
       "26           .  O"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "def getCharClass(c):\n",
    "    if ord('A') <= ord(c) <= ord('Z'):\n",
    "        return \"C\"\n",
    "    if ord('z') <= ord(c) <= ord('z'):\n",
    "        return \"c\"\n",
    "    if ord('0') <= ord(c) <= ord('9'):\n",
    "        return \"n\"\n",
    "    return \"p\"\n",
    "    \n",
    "def get_words_golds(sent):\n",
    "    return zip(*sent)\n",
    "\n",
    "pd.DataFrame(zip(*get_words_golds(train[3])))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "words=[]\n",
    "tags=[]\n",
    "ortho_words=[]\n",
    "chars=set()\n",
    "ortho_chars=set()\n",
    "wc=Counter()\n",
    "for sent in train:\n",
    "    for w,p in sent:\n",
    "        tags.append(p)\n",
    "        w_lower = w.lower()\n",
    "        words.append(w_lower)\n",
    "        chars.update([c for c in w])\n",
    "        ortho_w = \"\".join([getCharClass(c) for c in w])\n",
    "        ortho_words.append(ortho_w)\n",
    "        ortho_chars.update([c for c in ortho_w])\n",
    "        wc[w_lower]+=1\n",
    "words.append(\"_UNK_\")\n",
    "words.append(\"_S_\")\n",
    "chars.add(\"<*>\")\n",
    "\n",
    "ortho_words.append(\"_UNK_\")\n",
    "ortho_words.append(\"_S_\")\n",
    "ortho_chars.add(\"<*>\")\n",
    "\n",
    "\n",
    "tags.append(\"_S_\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "vw = Vocab.from_corpus([words]) # TODO Vocab\n",
    "vc = Vocab.from_corpus([chars])\n",
    "\n",
    "vwo = Vocab.from_corpus([ortho_words]) # TODO Vocab\n",
    "vco = Vocab.from_corpus([ortho_chars])\n",
    "\n",
    "vt = Vocab.from_corpus([tags])\n",
    "\n",
    "UNK = vw.w2i[\"_UNK_\"]\n",
    "S_W = vw.w2i[\"_S_\"]\n",
    "\n",
    "UNK_O = vwo.w2i[\"_UNK_\"]\n",
    "S_W_O = vwo.w2i[\"_S_\"]\n",
    "\n",
    "S_T = vt.w2i[\"_S_\"]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'B': 2, 'E': 3, 'I': 4, 'O': 0, 'U': 1, '_S_': 5}"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "vt.w2i"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "nwords = vw.size()\n",
    "nchars  = vc.size()\n",
    "\n",
    "nwords_ortho = vwo.size()\n",
    "nchars_ortho  = vco.size()\n",
    "\n",
    "ntags  = vt.size()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(9070, 93, 1155, 5, 6)\n"
     ]
    }
   ],
   "source": [
    "print(nwords, nchars, nwords_ortho, nchars_ortho, ntags)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "W_EMBED_SIZE=400\n",
    "WO_EMBED_SIZE=50\n",
    "C_EMBED_SIZE=30\n",
    "TAG_EMBED_SIZE=10\n",
    "CHAR_LSTM_OUTPUT_SIZE=200 # If it is seperate use a lower number\n",
    "LSTM_INPUT_SIZE=W_EMBED_SIZE # + WO_EMBED_SIZE + 4*CHAR_LSTM_OUTPUT_SIZE\n",
    "LSTM_OUTPUT_SIZE=100\n",
    "MLP_H_INPUT_SIZE=2*LSTM_OUTPUT_SIZE\n",
    "MLP_H_OUTPUT_SIZE=ntags"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "# DyNet Starts\n",
    "\n",
    "model = dy.Model()\n",
    "trainer = dy.AdamTrainer(model)\n",
    "\n",
    "WORDS_LOOKUP = model.add_lookup_parameters((nwords, W_EMBED_SIZE))\n",
    "CHARS_LOOKUP = model.add_lookup_parameters((nchars, C_EMBED_SIZE))\n",
    "\n",
    "WORDS_ORTHO_LOOKUP = model.add_lookup_parameters((nwords_ortho, WO_EMBED_SIZE))\n",
    "CHARS_ORTHO_LOOKUP = model.add_lookup_parameters((nchars_ortho, C_EMBED_SIZE))\n",
    "\n",
    "TRANS_LOOKUP = model.add_lookup_parameters((ntags, ntags))\n",
    "#p_t1  = model.add_lookup_parameters((ntags, TAG_EMBED_SIZE))\n",
    "\n",
    "# MLP on top of biLSTM outputs 100 -> 32 -> ntags\n",
    "pH = model.add_parameters((MLP_H_OUTPUT_SIZE, MLP_H_INPUT_SIZE))\n",
    "pO = model.add_parameters((ntags, MLP_H_OUTPUT_SIZE))\n",
    "\n",
    "# word-level LSTMs\n",
    "fwdRNN = dy.LSTMBuilder(1, LSTM_INPUT_SIZE, LSTM_OUTPUT_SIZE, model) # layers, in-dim, out-dim, model\n",
    "bwdRNN = dy.LSTMBuilder(1, LSTM_INPUT_SIZE, LSTM_OUTPUT_SIZE, model)\n",
    "\n",
    "# char-level LSTMs\n",
    "cFwdRNN = dy.LSTMBuilder(1, C_EMBED_SIZE, CHAR_LSTM_OUTPUT_SIZE, model)\n",
    "cBwdRNN = dy.LSTMBuilder(1, C_EMBED_SIZE, CHAR_LSTM_OUTPUT_SIZE, model)\n",
    "CHAR_ATTENTION = model.add_parameters((2*CHAR_LSTM_OUTPUT_SIZE, W_EMBED_SIZE))\n",
    "\n",
    "coFwdRNN = dy.LSTMBuilder(1, C_EMBED_SIZE, CHAR_LSTM_OUTPUT_SIZE, model)\n",
    "coBwdRNN = dy.LSTMBuilder(1, C_EMBED_SIZE, CHAR_LSTM_OUTPUT_SIZE, model)\n",
    "CHARO_ATTENTION = model.add_parameters((2*CHAR_LSTM_OUTPUT_SIZE, W_EMBED_SIZE))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "TWEET_WORD2VEC_EMBEDDINGS_PATH='/home/entity/Downloads/word2vec_twitter_model/word2vec_twitter_model.bin'\n",
    "def process_wordvecs(filename, vw, WORDS_LOOKUP, dims=200):\n",
    "    t_word2vec = Word2Vec.load_word2vec_format(filename,\n",
    "                                           binary=True, unicode_errors=\"ignore\")\n",
    "    found_words = 0\n",
    "    words_read = len(t_word2vec.vocab)\n",
    "    for word, widx in vw.w2i.iteritems():\n",
    "        if word in t_word2vec:\n",
    "            found_words += 1\n",
    "            embedding = t_word2vec[word]\n",
    "            WORDS_LOOKUP.init_row(widx, embedding)\n",
    "    print \"Found embeddings for %s words, total read: %s\" % (found_words, words_read)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "GLOVE_EMBEDDINGS_PATH=\"/home/entity/Downloads/GloVe/glove.6B.300d.txt\"\n",
    "def process_glovevectors(filename, vw, WORDS_LOOKUP, dims=200):\n",
    "    found_words = 0\n",
    "    words_read = 0\n",
    "    with open(filename) as fp:\n",
    "        for line in fp:\n",
    "            word, embedding = line.strip().split(\" \", 1)\n",
    "            words_read += 1\n",
    "            word = word.lower()\n",
    "            if word not in vw.w2i:\n",
    "                continue\n",
    "            found_words += 1\n",
    "            try:\n",
    "                embedding = map(float, embedding.split(\" \"))\n",
    "            except:\n",
    "                print \"Found embeddings for %s words, total read: %s\" % (found_words, words_read)\n",
    "                print word, embedding\n",
    "                raise\n",
    "            widx = vw.w2i[word]\n",
    "            WORDS_LOOKUP.init_row(widx, embedding)\n",
    "    print \"Found embeddings for %s words, total read: %s\" % (found_words, words_read)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Found embeddings for 6536 words, total read: 3039345\n"
     ]
    }
   ],
   "source": [
    "use_glove=False\n",
    "use_w2v=True\n",
    "if use_glove:\n",
    "    process_glovevectors(GLOVE_EMBEDDINGS_PATH, vw, WORDS_LOOKUP, dims=W_EMBED_SIZE)\n",
    "elif use_w2v:\n",
    "    process_wordvecs(TWEET_WORD2VEC_EMBEDDINGS_PATH, vw, WORDS_LOOKUP, dims=W_EMBED_SIZE)\n",
    "else:\n",
    "    print \"using random init\""
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def word_rep_backoff(w, cf_init, cb_init, *args):\n",
    "    w_lowered = w.lower()\n",
    "    if wc[w_lowered] > 5:\n",
    "        w_index = vw.w2i[w_lowered]\n",
    "        return WORDS_LOOKUP[w_index]\n",
    "    else:\n",
    "        pad_char = vc.w2i[\"<*>\"]\n",
    "        char_ids = [pad_char] + [vc.w2i[getCharClass(c)] for c in w] + [pad_char]\n",
    "        char_embs = [CHARS_LOOKUP[cid] for cid in char_ids]\n",
    "        fw_exps = cf_init.transduce(char_embs)\n",
    "        bw_exps = cb_init.transduce(reversed(char_embs))\n",
    "        return dy.concatenate([ fw_exps[-1], bw_exps[-1] ])\n",
    "    \n",
    "    \n",
    "def word_rep_all(w, cf_init, cb_init, cof_init, cob_init):\n",
    "    w_lowered = w.lower()\n",
    "    if w_lowered in wc and wc[w_lowered] > 5:\n",
    "        w_index = vw.w2i[w_lowered]\n",
    "    else:\n",
    "        w_index = UNK\n",
    "    w_embed = WORDS_LOOKUP[w_index]\n",
    "    ## Add ortho word embeddings\n",
    "    ortho_w = \"\".join([getCharClass(c) for c in w])\n",
    "    if ortho_w in vwo.w2i:\n",
    "        w_index = vwo.w2i[ortho_w]\n",
    "    else:\n",
    "        w_index = UNK_O\n",
    "    wo_embed = WORDS_ORTHO_LOOKUP[w_index]\n",
    "    ## Add char embeddings\n",
    "    pad_char = vc.w2i[\"<*>\"]\n",
    "    char_ids = [pad_char] + [vc.w2i[c] for c in w] + [pad_char]\n",
    "    char_embs = [CHARS_LOOKUP[cid] for cid in char_ids]\n",
    "    fw_exps = cf_init.transduce(char_embs)\n",
    "    bw_exps = cb_init.transduce(reversed(char_embs))\n",
    "    \n",
    "    ## Add char ortho embeddings\n",
    "    pad_char = vco.w2i[\"<*>\"]\n",
    "    char_ids = [pad_char] + [vco.w2i[c] for c in ortho_w] + [pad_char]\n",
    "    char_embs = [CHARS_ORTHO_LOOKUP[cid] for cid in char_ids]\n",
    "    fwo_exps = cof_init.transduce(char_embs)\n",
    "    bwo_exps = cob_init.transduce(reversed(char_embs))\n",
    "    \n",
    "    return dy.concatenate([w_embed, fw_exps[-1], bw_exps[-1],\n",
    "                          wo_embed, fwo_exps[-1], bwo_exps[-1],])\n",
    "\n",
    "\n",
    "\n",
    "def word_rep_attention(w, cf_init, cb_init, cof_init, cob_init):\n",
    "    w_lowered = w.lower()\n",
    "    if w_lowered in wc and wc[w_lowered] > 5:\n",
    "        w_index = vw.w2i[w_lowered]\n",
    "    else:\n",
    "        w_index = UNK\n",
    "    w_embed = WORDS_LOOKUP[w_index]\n",
    "    ## Add ortho word embeddings\n",
    "    ortho_w = \"\".join([getCharClass(c) for c in w])\n",
    "    if ortho_w in vwo.w2i:\n",
    "        w_index = vwo.w2i[ortho_w]\n",
    "    else:\n",
    "        w_index = UNK_O\n",
    "    wo_embed = WORDS_ORTHO_LOOKUP[w_index]\n",
    "    ## Add char embeddings\n",
    "    pad_char = vc.w2i[\"<*>\"]\n",
    "    char_ids = [pad_char] + [vc.w2i[c] for c in w] + [pad_char]\n",
    "    char_embs = [CHARS_LOOKUP[cid] for cid in char_ids]\n",
    "    fw_exps = cf_init.transduce(char_embs)\n",
    "    bw_exps = cb_init.transduce(reversed(char_embs))\n",
    "    char_full_exps = [dy.concatenate([fw, bw]) for fw, bw in zip(fw_exps, bw_exps)]\n",
    "    ATT = dy.parameter(CHAR_ATTENTION)\n",
    "    #(dy.transpose(clp[1])*(A*e))\n",
    "    attn_w = dy.concatenate([dy.tanh(dy.transpose(cw)*(ATT*w_embed)) for cw in char_full_exps])\n",
    "    attn_w = dy.softmax(attn_w)\n",
    "    final_embed = []\n",
    "    for awi, cw in enumerate(char_full_exps):\n",
    "        final_embed.append(cw*attn_w[awi])\n",
    "    final_embed = dy.esum(final_embed)\n",
    "    \n",
    "    \n",
    "    ## Add char ortho embeddings\n",
    "    pad_char = vco.w2i[\"<*>\"]\n",
    "    char_ids = [pad_char] + [vco.w2i[c] for c in ortho_w] + [pad_char]\n",
    "    char_embs = [CHARS_ORTHO_LOOKUP[cid] for cid in char_ids]\n",
    "    fwo_exps = cof_init.transduce(char_embs)\n",
    "    bwo_exps = cob_init.transduce(reversed(char_embs))\n",
    "    \n",
    "    char_full_exps = [dy.concatenate([fw, bw]) for fw, bw in zip(fwo_exps, bwo_exps)]\n",
    "    ATT = dy.parameter(CHARO_ATTENTION)\n",
    "    #(dy.transpose(clp[1])*(A*e))\n",
    "    attn_w = dy.concatenate([dy.tanh(dy.transpose(cw)*(ATT*w_embed)) for cw in char_full_exps])\n",
    "    attn_w = dy.softmax(attn_w)\n",
    "    final_embed_o = dy.esum([cw*attn_w[awi] for awi, cw in enumerate(char_full_exps)])\n",
    "    \n",
    "    return dy.concatenate([w_embed, final_embed,\n",
    "                          wo_embed, final_embed_o,])\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def build_tagging_graph(words, word_rep=word_rep_backoff):\n",
    "    dy.renew_cg()\n",
    "    # parameters -> expressions\n",
    "    H = dy.parameter(pH)\n",
    "    O = dy.parameter(pO)\n",
    "\n",
    "    # initialize the RNNs\n",
    "    f_init = fwdRNN.initial_state()\n",
    "    b_init = bwdRNN.initial_state()\n",
    "\n",
    "    cf_init = cFwdRNN.initial_state()\n",
    "    cb_init = cBwdRNN.initial_state()\n",
    "    \n",
    "    cof_init = coFwdRNN.initial_state()\n",
    "    cob_init = coBwdRNN.initial_state()\n",
    "\n",
    "    # get the word vectors. word_rep(...) returns a 128-dim vector expression for each word.\n",
    "    wembs = [word_rep(w, cf_init, cb_init, cof_init, cob_init) for w in words]\n",
    "    wembs = [dy.dropout(we,0.5) for we in wembs] # optional\n",
    "\n",
    "    # feed word vectors into biLSTM\n",
    "    fw_exps = f_init.transduce(wembs)\n",
    "    bw_exps = b_init.transduce(reversed(wembs))\n",
    "# OR\n",
    "#    fw_exps = []\n",
    "#    s = f_init\n",
    "#    for we in wembs:\n",
    "#        s = s.add_input(we)\n",
    "#        fw_exps.append(s.output())\n",
    "#    bw_exps = []\n",
    "#    s = b_init\n",
    "#    for we in reversed(wembs):\n",
    "#        s = s.add_input(we)\n",
    "#        bw_exps.append(s.output())\n",
    "\n",
    "    # biLSTM states\n",
    "    bi_exps = [dy.concatenate([f,b]) for f,b in zip(fw_exps, reversed(bw_exps))]\n",
    "\n",
    "    # feed each biLSTM state to an MLP\n",
    "    exps = []\n",
    "    for bi in bi_exps:\n",
    "        bi = dy.dropout(bi,0.5)\n",
    "        r_t = O*(dy.tanh(H * bi))\n",
    "        exps.append(r_t)\n",
    "\n",
    "    return exps"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def viterbi_decoding(vecs, gold_tags = []):\n",
    "    # Initialize\n",
    "    init_prob = [SMALL_NUMBER] * ntags\n",
    "    init_prob[S_T] = 0\n",
    "    for_expr = dy.inputVector(init_prob)\n",
    "    best_ids = []\n",
    "    trans_exprs = [TRANS_LOOKUP[tid] for tid in range(ntags)]\n",
    "    # Perform the forward pass through the sentence\n",
    "    for i, vec in enumerate(vecs):\n",
    "        my_best_ids = []\n",
    "        my_best_exprs = []\n",
    "        for next_tag in range(ntags):\n",
    "            # Calculate vector for single next tag\n",
    "            next_single_expr = for_expr + trans_exprs[next_tag]\n",
    "            next_single = next_single_expr.npvalue()\n",
    "            # Find and save the best score\n",
    "            my_best_id = np.argmax(next_single)\n",
    "            my_best_ids.append(my_best_id)\n",
    "            my_best_exprs.append(dy.pick(next_single_expr, my_best_id))\n",
    "        # Concatenate the scores for all vectors together\n",
    "        for_expr = dy.concatenate(my_best_exprs) + vec\n",
    "        # Give a bonus to all but the correct tag if using margin\n",
    "        if MARGIN != 0 and len(gold_tags) != 0:\n",
    "            adjust = [MARGIN] * ntags\n",
    "            adjust[vt.w2i[gold_tags[i]]] = 0\n",
    "            for_expr = for_expr + dy.inputVector(adjust)\n",
    "        # Save the best ids\n",
    "        best_ids.append(my_best_ids)\n",
    "    # Perform the final step to the sentence terminal symbol\n",
    "    next_single_expr = for_expr + trans_exprs[S_T]\n",
    "    next_single = next_single_expr.npvalue()\n",
    "    my_best_id = np.argmax(next_single)\n",
    "    best_expr = dy.pick(next_single_expr, my_best_id)\n",
    "    # Perform the reverse pass\n",
    "    best_path = [vt.i2w[my_best_id]]\n",
    "    for my_best_ids in reversed(best_ids):\n",
    "        my_best_id = my_best_ids[my_best_id]\n",
    "        best_path.append(vt.i2w[my_best_id])\n",
    "    best_path.pop() # Remove final <s>\n",
    "    best_path.reverse()\n",
    "    # Return the best path and best score as an expression\n",
    "    return best_path, best_expr\n",
    "\n",
    "def forced_decoding(vecs, tags):\n",
    "    # Initialize\n",
    "    for_expr = dy.scalarInput(0)\n",
    "    for_tag = S_T\n",
    "    # Perform the forward pass through the sentence\n",
    "    for i, vec in enumerate(vecs): \n",
    "        my_tag = vt.w2i[tags[i]]\n",
    "        for_expr = for_expr + dy.pick(TRANS_LOOKUP[my_tag], for_tag) + vec[my_tag]\n",
    "        for_tag = my_tag\n",
    "    for_expr = for_expr + dy.pick(TRANS_LOOKUP[S_T], for_tag)\n",
    "    return for_expr\n",
    "\n",
    "def viterbi_sent_loss(vecs, tags):\n",
    "    #vecs = build_tagging_graph(words)\n",
    "    viterbi_tags, viterbi_score = viterbi_decoding(vecs, tags)\n",
    "    if viterbi_tags != tags:\n",
    "        reference_score = forced_decoding(vecs, tags)\n",
    "        return viterbi_score - reference_score\n",
    "    else:\n",
    "        return dy.scalarInput(0)\n",
    "\n",
    "def sent_loss(vecs, tags):\n",
    "    #vecs = build_tagging_graph(words)\n",
    "    errs = []\n",
    "    for v,t in zip(vecs,tags):\n",
    "        tid = vt.w2i[t]\n",
    "        err = dy.pickneglogsoftmax(v, tid)\n",
    "        errs.append(err)\n",
    "    return dy.esum(errs)\n",
    "\n",
    "def tag_sent(vecs):\n",
    "    #vecs = build_tagging_graph(words)\n",
    "    vecs = [dy.softmax(v) for v in vecs]\n",
    "    probs = [v.npvalue() for v in vecs]\n",
    "    tags = []\n",
    "    for prb in probs:\n",
    "        tag = np.argmax(prb)\n",
    "        tags.append(vt.i2w[tag])\n",
    "    return tags\n",
    "\n",
    "def predict(sent, viterbi=True, word_rep=word_rep_backoff):\n",
    "    words, golds = get_words_golds(sent)\n",
    "    vecs = build_tagging_graph(words, word_rep=word_rep)\n",
    "    if viterbi:\n",
    "        tags, loss_exp = viterbi_decoding(vecs)\n",
    "    else:\n",
    "        tags = tag_sent(vecs)\n",
    "    return tags\n",
    "\n",
    "def print_sequences(sequences, predictions, filename, test_data=False, notypes=False):\n",
    "    with open(filename, \"wb+\") as fp:\n",
    "        for seq, pred in zip(sequences, predictions):\n",
    "            for t, p in zip(seq, pred):\n",
    "                token, tag = t\n",
    "                if tag[0] == \"U\":\n",
    "                    tag = \"B%s\" % tag[1:]\n",
    "                if tag[0] == \"E\":\n",
    "                    tag = \"I%s\" % tag[1:]\n",
    "                if p[0] == \"U\":\n",
    "                    p = \"B%s\" % p[1:]\n",
    "                if p[0] == \"E\":\n",
    "                    p = \"I%s\" % p[1:]\n",
    "                if notypes:\n",
    "                    tag = tag[0]\n",
    "                    p = p[0]\n",
    "                if test_data:\n",
    "                    line = \"\\t\".join((token, p))\n",
    "                else:\n",
    "                    line = \"\\t\".join((token, tag, p))\n",
    "                print >> fp, line\n",
    "            print >> fp, \"\"\n",
    "    print \"Done\""
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    }
   ],
   "source": [
    "num_tagged = cum_loss = 0\n",
    "token_scores = []\n",
    "sent_scores = []\n",
    "avg_loss = []\n",
    "word_rep=word_rep_backoff\n",
    "for ITER in tnrange(10, desc=\"Iterations\"):\n",
    "    random.shuffle(train)\n",
    "    for i,s in enumerate(tqdm_notebook(train, desc=\"Training Items\", leave=False),\n",
    "                         start=1):\n",
    "        if i % 500 == 0:\n",
    "            trainer.status()\n",
    "            avg_loss.append(cum_loss / num_tagged)\n",
    "            cum_loss = 0\n",
    "            num_tagged = 0\n",
    "        if i % 10000 == 0 or i == len(train)-1: \n",
    "            good_sent = bad_sent = good = bad = 0.0\n",
    "            for sent in tqdm_notebook(test, desc=\"Test instances\", leave=False):\n",
    "                words, golds = get_words_golds(sent)\n",
    "                vecs = build_tagging_graph(words, word_rep=word_rep)\n",
    "                if ITER < MAX_LIK_ITERS:\n",
    "                    tags = tag_sent(vecs)\n",
    "                else:\n",
    "                    tags, loss_exp = viterbi_decoding(vecs)\n",
    "                if tags == golds: good_sent += 1\n",
    "                else: bad_sent += 1\n",
    "                for go,gu in zip(golds,tags):\n",
    "                    if go == gu: good += 1\n",
    "                    else: bad += 1\n",
    "            #print good/(good+bad), good_sent/(good_sent+bad_sent)\n",
    "            token_scores.append(good/(good+bad))\n",
    "            sent_scores.append(good_sent/(good_sent+bad_sent))\n",
    "        # train on sent\n",
    "        words, golds = get_words_golds(s)\n",
    "        vecs = build_tagging_graph(words, word_rep=word_rep)\n",
    "        if ITER < MAX_LIK_ITERS:\n",
    "            loss_exp =  sent_loss(vecs, golds)\n",
    "        else:\n",
    "            loss_exp =  viterbi_sent_loss(vecs, golds)\n",
    "        cum_loss += loss_exp.scalar_value()\n",
    "        num_tagged += len(golds)\n",
    "        loss_exp.backward()\n",
    "        trainer.update()\n",
    "    #print \"epoch %r finished\" % ITER\n",
    "    trainer.update_epoch(1.0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABNgAAANKCAYAAABYv/O6AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAAPYQAAD2EBqD+naQAAIABJREFUeJzs3Xl41OW9///XZyaZLEx2lgRCIAiEXSEILizVtFYRU9Ta\n0qporVbPt6Bt3Vu72Fb9earWFloaPcWjVMX2nBbTFnuKoIiyi8i+hy1kIQuZmZDMJDOf3x+BIQPZ\nIMlMMnk+ritXMvfnns+84zVCeOW+77dhmqYpAAAAAAAAABfFEuoCAAAAAAAAgO6MgA0AAAAAAABo\nBwI2AAAAAAAAoB0I2AAAAAAAAIB2IGADAAAAAAAA2oGADQAAAAAAAGgHAjYAAAAAAACgHQjYAAAA\nAAAAgHYgYOtEeXl5uuaaazR27FjdcsstWrduXahLAgAAAAAAQAcjYOskixcv1quvvqonnnhC+fn5\nmjp1qu6//34dOXIk1KUBAAAAAACgAxmmaZqhLiIcTZ8+Xbfddpvmzp3rH7vppps0efJkPfXUUyGs\nDAAAAAAAAB2px69gKygo0Ne+9jWNGDFCTz75ZItzly9frrvuukuTJk3SuHHjdP311+ull16S0+kM\nmHfgwAGVlJToyiuvDBi/4oor2CYKAAAAAAAQZnp0wLZ48WLdfPPN2rlzpwzDaHHu73//e82bN08F\nBQW69dZb9d3vflcDBw7UK6+8om9+85tyuVz+uUeOHJFhGBowYEDAPdLT03Xo0KHO+Fb8iouLlZWV\npaysLBUXF3fqa6H74n2C1vAeQVvwPkFreI+gLXifoC14n6A1vEfQFp35PumxAdvDDz+sZ599Vjk5\nOXrsscfU0k7ZPXv2aMGCBUpNTdW7776rxx9/XPfff79effVV3Xfffdq3b59efvll//zq6mpJUkxM\nTMB9YmNj5fV65fF4OuebAgAAAAAAQND12ICttLRUzz//vF588UXFxcW1OHfJkiUyTVN33323kpKS\nAq498MADio6O1tKlS+V2u1u8T2ur5AAAAAAAAND99NiAbeHChcrNzW3T3PXr10uSpkyZct61Xr16\naezYsaqurta2bdskyR/YnTp1KmCuy+VSZGSkbDZbe0oHAAAAAABAF9JjAza73d6mefX19Tp8+LAM\nw1BGRkaTcwYPHiypYSupJA0aNEimaerYsWMB844eParMzMyLLxoAAAAAAABdTo8N2NrK5XLJ6/Uq\nOjq62ZVnCQkJkqSqqipJDYHbgAEDtHr16oB5H3/8saZPn965BQMAAAAAACCoIkJdQFdXW1srSYqM\njGx2js1mk2ma/rlSw9lszz77rMaMGaNRo0bpjTfeUEVFhe64444Oqau5bhelpaUdcn8AAAAAAIBw\n1VJ+kpqaesH3I2BrRXR0tCSprq6u2Tlut1uGYfjnStJtt90ml8ul5557ThUVFRo5cqT++Mc/qm/f\nvh1SV1tWws2ePVtWq7VDXg/hxev1+r/mfYKm8B5BW/A+QWt4j6AteJ+gLXifoDW8R9AWjd8nt912\nW7PzzhwBdiEI2FoRFxeniIgI1dTUyOPxNLlNtLKyUpLO6zD6rW99S9/61reCUue5rFYrf6CgWVar\nVenp6aEuA10Y7xG0Be8TtIb3CNqC9wnagvcJWsN7BG1xJitpHLR1FAK2VlitVmVmZmr//v0qKChQ\nVlbWeXMOHjwoSRo5cmTQ6lq1alWz186k9StWrAhaPQAAAAAAAF1dTk6OvF6vlixZ0qH3JWBrgylT\npmjfvn368MMPzwvYysvLtX37diUmJmrMmDFBq6ml/cCsXAMAAAAAAGia1Wq9qHPWWkIX0TaYPXu2\nIiMj9cYbb6ikpCTg2gsvvCCv16vbb79dERGhyys9Ho9cLpdcLpdM05RpmiGrBQAAAAAAoKsyTdOf\nobhcLnk8nnbfs0euYCsuLtayZcv8j7dv3y5J2rdvnxYtWuQfnzZtmoYOHapBgwbpiSee0C9/+Uvd\nfPPNys3NVXx8vD7++GNt3rxZEydO1He+852gfx+N5eXlacGCBf7H8fHxIawGAAAAAACga3I6ncrO\nzvY/njt3rubNm9euexpmD1zqtGHDBs2ZM0eGYbQ477nnntOsWbP8j1evXq3XXntN27dvl9vtVkZG\nhm688Ubdc889TTY/CCaPx+NPXHNzcyVJK1euDGVJAAAAAAAAXUpOTo5M01R+fr5/zGaztTvX6ZEr\n2CZNmqTdu3df8POmTp2qqVOndkJF7df4zdBacAgAAAAAANBTGYYhu93eoffskQFbOGq8gq0HLkoE\nAAAAAABokzNnsJ3BCjb4cQYbAAAAAABA6ziDDc3iDDYAAAAAAICWcQYbWsQZbAAAAAAAAK3rjDPY\nLB16NwAAAAAAAKCHYQVbmKDJAQAAAAAAQOtocoBm0eQAAAAAAACgdTQ5QLNocgAAAAAAANAymhyg\nRTQ5AAAAAAAAaB1NDgAAAAAAAIAuhoANAAAAAAAAaAe2iIYJuogCAAAAAAC0ji6iaBZdRAEAAAAA\nAFpHF1E0iy6iAAAAAAAALaOLKFpEF1EAAAAAAIDW0UUUAAAAAAAA6GII2AAAAAAAAIB2IGADAAAA\nAAAA2oEz2MJE4yYH9K0AAAAAAABommmacrlc/scd0eSAFWxhIi8vT9nZ2crOzlZhYaEqq6p1rNQZ\n6rIAAAAAAAC6FKfT6c9QsrOzlZeX1+57GibLncJC4xVsubm5Kq2s0SVffFLfzh2tm6YMobMoAAAA\nAADo8XJycmSapvLz8/1jHbGCjS2iYaLxm+FMmObzmXp16XbtP3pS373tMkVFWkNZIgAAAAAAQMgZ\nhiG73d6h92SLaA/wwafH9PiC1SqtOBXqUgAAAAAAAMIOAVuYslgCt4QeOFal77+8Slv3nwhRRQAA\nAAAAAOGJgC1MpSREa9zQ3gFjjmqPfpy3VktXHaDTKAAAAAAAQAchYAtTFsPQz79zpWZNvyRg3Ocz\n9cf87Xrxzc2q9dSHqDoAAAAAAIDwQcAWJjwej1wul1wul0zTlGmaslot+nbuGD1ye7Zs5zQ4WPXZ\nMT0+/2OVcC4bAAAAAADoQUzT9GcoLpdLHo+n3fckYAsTeXl5ys7OVnZ2tgoLC+V0Ov3Xpk9I1wsP\nTlXf5NiA5xw8XqXv/3qVtuwtDXa5AAAAAAAAIeF0Ov0ZSnZ2tvLy8tp9T8PkMK6w4PF4/Ilrbm6u\nJGnlypUBcxzVHv3qT5u0ZW9gowOLId09c7RmTb9EhhHYHAEAAAAAACBc5OTkyDRN5efn+8dsNpts\nNlu77ssKtjBhs9lkt9tlt9tlGEaTQVl8L5t+du8VuvWaoQHjPlNa9PcdeuFPn6rWzblsAAAAAAAg\nfBmG4c9Q7HZ7u8M1iYCtx7FaLbp75mg9dudERdkCz2X7aEuhHp2/WsXl1SGqDgAAAAAAoPshYOuh\npl42QL+aN1WpKYHnsh0qcuj7v16lzXs4lw0AAAAAAKAtCNh6sMz+CXrpe9M1IatvwLirpk5Pv7pW\n/7NynziiDwAAAAAAoGUEbD1cXKxNP7n3Ct2WMyxg3GdKr/9zp55fvEk1nMsGAAAAAADQLAI2yGox\nNGfGKD0x53JFn3Mu2yefH9ejv/1IRWWcywYAAAAAANCUiFAXgK7j6kv7K72vXc+8tkFFjRodHC52\n6vsvr9Kjd2Qre0S/EFYYPKZpqrqmTpVOtzx1XlksDZ1ZLUZDtxGLxZDFMGQYkuX0Y8NQo/Ezc3T+\n16ef11SnVwAAAAAA0P0QsIUJj8cjj8cjSe06N21QWrxe+t40vfDmp/p099lGB9U1dXr6v9bpzhtG\n6qvXDuu24ZDPZ8p5yqMKR60qHW5VOGpU4XCr0lGrCueZsVpVOmrlqfd1ai1nArfGAZzValFyfLT6\nJMWoT+Lpj6QY9UmMVZ+kGKUkxCgygoWnAAAAAABcLNM05XK5/I9tNptsNlu77mmYnGIfFubPn68F\nCxb4H8fHx2vjxo0XfT+vz9Tb/7db77y/97xrV41L00NfH6/Y6MiLvn9H8/pMVbnOhmMVjtqzwZmj\nVpXOWlVU1arS6ZbX133f8oYhJcVFqU9irHonnR/A9UmMUXwvW7cNQAEAAAAA6Ew5OTlyOBxyOBz+\nsblz52revHntui8BW5hovIItNzdXkrRy5cp233fN1uN6eclm1bi9AeMD+8XpqW9NUv8+9na/Rkt8\nPlOOao/Kq2pU7qhVeVWtyqtqzq40Ox2cVbnc6sa5WYeyRVrVJzE6IHRrHML1ToyRLdLa+o0AAAAA\nAAgzOTk5Mk1T+fn5/rGOWMHGFtEw0fjN0JGrl64ad/ZctuONGh0cLXHqBy+v0sO3Z+vyUakXdW9P\nnVcVjUKzhs+Nv65RhaNW9d7gJ2cxURFKjo9SUny0YqIiZJqSzzTl85kyTVOm2bBq7szXPp/ZcN00\nZfp09mvTlO/0Y9M05Ts912zqms+Up96nunZuTfXUeVV4olqFJ5pvTJFoj1LvpBgN7GvXVeP6K3tE\nX0VGELoBAAAAAMKfYRiy2zt2wRAr2MJQTk6OJGnFihUddk9XTZ1eeutTbdxZEjBuGNLtXx6h23KG\ny2JpCPZM05Srps4fkpWdrFXFOSvQyqtq5aj2dFh9bWWPiVRyQrSS46KVFB+l5PhoJcU3enz6WnRU\naLJn02xYsXfiZI1OVNboxMlTpz/XqOz04wqHu8Nft1d0hK4Ym6Zpl6Vr3LDeirByzhsAAAAAIPx0\nRmYiEbCFpc56s/h8pt7+9x4tWb7nvGtZg5IUYbWo4nSA1tkNAhozDCmhV5SSTq84S46LPh2UnX58\nOkRLiosKi62RdfVelVfVnhfANX5c6/G2fqNmxPey6epx/TV1/ACNykyR1cJ5bgAAAACA8NBZmQlb\nRNFmFouh268foUvSE/TSW5tV4673X9tzuLJTXrNXTKRSEqKVEh+tlIQYpSQ2fH0mNEtJiFaCPapH\nrbiKjLAqNaWXUlN6NXn9zArCE5U1OlF5qlH4dvZxhaNWzUXrjmqP3lt7SO+tPaTk+GhNuay/pl02\nQMMzkmieAAAAAABAE1jBFoY6K41t7GiJU8+8tkGFJ1ytT26CxWIoKS5KvRNilJzQEJSlJMSc/hzd\nMB4fuq2a4a7e61NJxSmt21akj7YU6mBhVavP6Zscq2mXDdC08QM0OC2esA0AAAAA0O2wRRRtFoyA\nTZJO1dbppbc2a/2O4oDxmCirkuPPhmUpCTHqnRCt5EYBWmJcNFsPu5BjpU6t3nJcH312TMdKWw9N\n0/vaNe2yAZo6foDS+8YFoUIAAAAAANqPgA1tFqyATWrYjrjv6ElV19Q1rDxLjFFsdGSnvy46h2ma\nOlTk0Oothfros0KVVJxq9TlD+ido6vgBmnrZAPVLjg1ClQAAAAAAXBzOYEOXZBiGhmckhboMdBDD\nMJTZP0GZ/RN05w0jte/oSX30WaFWbylUhaO2yeccPF6lg8er9Po/dyprUJKmXTZAV1/aXykJMUGu\nHgAAAACA0CBgA9CkM+Hp8Iwk3XPTaO0sKNdHWwr1yefH5aj2NPmcPYcrtedwpf4rf7vGDOmtqeMH\n6KqxaUqwRwW5egAAAAAAgoctomEomFtE0fN4vT59vr9Mqz8r1Nptx1VdW9/ifIvF0GXD+2jqpQM0\ndGCieidEq1dMJE0SAAAAAABBxxZRAF2C1WrRhKy+mpDVV//vq+O0eXepPtpSqPU7iuX2eM+b7/OZ\n2ry7VJt3l/rHbJHWs00wzmmIkZIQreSEaCXHRyvCagnmtwYAAAAAwEUhYANw0SIjrJo8Jk2Tx6Sp\n1l2vjbtKtHpLoTbtKlFdva/Z53nqvCoqq1ZRWXWzcwxDSrBHNRHCne1I2zshRrHREayGAwAAAACE\nFAFbmPB4PPJ4Gs7FYtcvQiE6KkJTL2voJlpdU6f1O4r00WeF2rL3hLy+C39PmqZ00unWSadbB1TV\n/OvarP7Vb8kJ0UqJb7QSLr7hIyk+SpER1vZ8ewAAAACAMGGaplwul/+xzWaTzWZr1z05gy1MzJ8/\nXwsWLPA/jo+P18aNG0NYEdCgyuXW2m1F2nWoQmUna1ReVavyqhrVNrGdtDPFxdqUHB/VELoFhG8N\noVxSfLSSCeL86r0+lVacUrmjVhbDUGSEpdGHVRFWQ5ERVv+Y1WKwkhAAAABAl5eTkyOHwyGHw+Ef\nmzt3rubNm9eu+xKwhYnGK9hyc3MlSStXrgxlSUCzTNPUqdp6lVedCdxqVe5o+LridABXXlWrky63\ngv0nVFxsZGD4lhCtpLjTodyZz2ESxLnrvCoub9iqW1xereNlZ78urayR7wJWHhqGFGltFMAFBHKW\n09fOBnIRjcYbf52RGqerxvVXtI0F1gAAAAA6Xk5OjkzTVH5+vn+sI1aw8S+YMNH4zcAqEnR1hmGo\nV0ykesVEKiM1vtl59V6fKh3uRkHc+YFceVWtPHUdtxrOeapOzlN1OlzsbHFeXGzk6VVvDR8J9ijF\n97IpvpdNCb1siu8VpXh7w9ex0ZGyWELz/2V1TZ2KGoVoRWXV/sflVbUd9jqmKXnqffLU+yS13Fm2\nNUuW79VDXx+v0UNSOqY4AAAAAGjEMAzZ7fYOvScBG4AuK8JqUZ+kGPVJiml2jmmaqq6p84dtZadD\nuEpHrSoafVQ63Re0Iqs1Z4K4I60EcZJksRiKj7Up3n4mgDsbxjWMRZ0XzEVFtm2FnGmaclR7AoIz\n/+eyajmqPe39VoOuqKxaT/7+Y900dYjuvGEkq9kAAAAAdHn8qwVAt2YYhuyxNtljbRqU1vxqOK/P\nlKParYqqhrCtvKpWlc6GLan+EM5Rq4oODuIkyeczddLl1kmXu83PibZZG4VwjVfHRanWUx+wnfNU\nbftWjDUlLtam/r17qU9SjAzDUF29V3X1vrMfXp/q631NjtfV+9r939A0pfyPDmrTzhI9yGo2AAAA\nAF0cARuAHsFqMZQU13CeWkt8voYVYRXnrICrcNSeDudq/SHdxXRHbataj1e1nhqVVtZ02mskx0cp\nrbddaSm9lNo7Vv1T7Err3UupvXvJHhPZrnt7fabq6r0NIdzp0K2+cRBX71OdNzCcO1bq0v+s2Ht6\nm2mD46xmAwAAANAN8C8VAGjEYjGUGBelxLgoDRmQ0Oy8M0FcpbMhfHNUe+So9qjK5fZ/3fDhVpXL\nI+cpT9AbNlgMqXdSrNJSYv1BWlrvhq9Tk2MVHdV5fwVYLYastgjpAs8JnXpZf7285DPtOVzpH2u8\nmu2h2eM1KpPVbAAAAAC6FrqIhqGcnBxJ0ooVK0JcCYAzvL6Gs+ICAzh3k8FcVbVHzmq3atytN2+I\nsBrql3w6NEuJVVrvXup/+ut+ybHdstup12fq3VUH9Kd/7VJdo9VsUkO30q9Mu0S3Xz+C1WwAAAAA\nLlhnZSb86wQAgsBqMfznqLWVp8573ko4R7VHEREW/6q03okxsoaoQ2lnsVoM3XLNUF0+qp9+8875\nq9mWrjqgDTuK9b3ZEzQyMzmElQIAAABAAwI2AOiibJFW9U6MUe/E5ruohrOB/eL0/NypenfVfv3p\nX7sDVrMdL6vW479bra9Mu0R33DCyzV1XAQAAAKAzWEJdAAAAzWlYzTZMv/nBF5SVkRRw7cxqtode\n/EC7CipCVCEAAAAAELABALqBgf3i9Py8qbr7xlGKjAj8q6vwRMNqtj/mb5e7rvVz6wAAAACgoxGw\nAQC6BavF0K3XNqxmG56RGHDt7Gq2D7X7EKvZAAAAAAQXARsAoFsZ2C9O/zl3qu66cZQirOeuZnPp\n8QWrtejvO1jNBgAAACBoCNgAAN2O1WrRV68dpt/8YPp5q9l8pvS3D/c3rGY7zGo2AAAAAJ2PgK0T\n1dbW6uGHH9aIESO0cePGUJcDAGEnIzVe/zl3qubMGNn0arb5rGYDAAAA0PkI2DrJ0aNH9fWvf107\nd+6UYRihLgcAwpbVatFtOcP18g+ma+jAplezfe8lVrMBAAAA6DwEbJ1k8eLFys7O1q9//WuZphnq\ncgAg7A1KjdcL85pezXastGE123//Y4c8rGYDAAAA0MF6VMBWUFCgr33taxoxYoSefPLJFucuX75c\nd911lyZNmqRx48bp+uuv10svvSSn09mm15ozZ45+8pOfyGq1dkTpAIA2aG012/9+sF8PvfSh9rCa\nDQAAAEAH6jEB2+LFi3XzzTe3acvm73//e82bN08FBQW69dZb9d3vflcDBw7UK6+8om9+85tyuVyt\nvl56enpHlQ4AuEBnVrPdecNIRVgD/8w/VurSY6xmAwAAANCBekTA9vDDD+vZZ59VTk6OHnvssRa3\nbO7Zs0cLFixQamqq3n33XT3++OO6//779eqrr+q+++7Tvn379PLLLwexegDAxbBaLfraF4fr5e9/\nQUPTEwKunVnN9r1ff6j9x06GqEIAAAAA4aJHBGylpaV6/vnn9eKLLyouLq7FuUuWLJFpmrr77ruV\nlJQUcO2BBx5QdHS0li5dKrfb3ZklAwA6yKC0eL3w4LQmV7MdLXHpkd98pL+s2Cuvj/MyAQAAAFyc\nHhGwLVy4ULm5uW2au379eknSlClTzrvWq1cvjR07VtXV1dq2bZskadOmTRo/frzGjx+vCRMm6JVX\nXum4wgEAHaKl1Wxen6k3lu3Sk7/7WMXl1SGqEAAAAEB31iMCNrvd3qZ59fX1Onz4sAzDUEZGRpNz\nBg8eLKlhK6kkjRs3Tvn5+crPz9e7776r2bNnd0jNAICONygtXr96cJpuv36ErJbA1Wy7DlXowRc/\n0PsbDtP9GQAAAMAFiQh1AV2Jy+WS1+tVbGysbDZbk3MSEhpWPlRVVUmSbDabBg4cGLQazyguLm72\nmtfrpXspADQjwmrR7C9lKXtEX7345mYVnjjbuKbG7dVv3tmiDTtL9N2vXqoEe1QIKwUAAADQGbxe\nb4u5Smpq6gXfk4CtkdraWklSZGRks3NsNptM0/TPbU5FRYV8Pp8qKyslNQRyZWVlioyM9Id07TF9\n+vQWr9PFFABaNmxgkl7+wXT99z926p+fFARcW7utSLsOVeihr4/XxJH9QlQhAAAAgM5QVFTUYq5y\nZtfihSBgayQ6OlqSVFdX1+wct9stwzD8c5vz1a9+VUVFRZIkwzA0b948SdLll1+uN954o4MqBgC0\nR7QtQg/cMk6Xj+qn377zmSocZxvYnHS69fR/rdMNVw7WPTeNVnQUf2UCAAAAaBr/WmgkLi5OERER\nqqmpkcfjaXKb6JkVaed2GD3XypUrO6XGM1atWtXsNc6BA4ALkz2in+Y/cq1+9z9btGZrUcC199Ye\n0uf7Tujh27M1PKPlP/sBAAAAdH1paWlasmRJh96TgK0Rq9WqzMxM7d+/XwUFBcrKyjpvzsGDByVJ\nI0eODHZ5AVraD8z5awBw4eJ72fTEnMv1wadH9Ye/blONu95/7XhZtR6dv1qzvzhcX/vicFmtPaJH\nEAAAABCWrFbrRZ2z1hL+hXCOKVOmyDRNffjhh+ddKy8v1/bt25WYmKgxY8YEv7gWeDweuVwuuVwu\nmaZJBzwAuAiGYejaiRma/8g1Gj0kJeCaz2fqrX/v0WMLVut4o8YIAAAAALoX0zT9GYrL5ZLH42n3\nPQnYzjF79mxFRkbqjTfeUElJScC1F154QV6vV7fffrsiIrrW4r+8vDxlZ2crOztbhYWFcjqdoS4J\nALqtfsmxeuY/rtbdN45ShNUIuLb3yEk9+NKHem/tIX6ZAQAAAHRDTqfTn6FkZ2crLy+v3fc0zDD/\n10FxcbGWLVvmf7x9+3YtW7ZMY8aM0YwZM/zj06ZN09ChQyVJb775pn75y18qKSlJubm5io+P18cf\nf6zNmzdr4sSJWrRoUZPns4WSx+PxJ665ubmSOv8cOADoCQ4WVunFtz7VkeLzf3Fx+ah+mve1y5QU\n13LjGwAAAABdQ05OjkzTVH5+vn/MZrO1O+cJ+4Btw4YNmjNnjgzDaHHec889p1mzZvkfr169Wq+9\n9pq2b98ut9utjIwM3Xjjjbrnnnu6XLh2rpycHEnSihUrQlwJAIQHT51XbyzbpXc/OnDetfheNs37\n2mW6YkxaCCoDAAAAcCE6KzMJ+4Ctp2AFGwB0vs/3ntDLSzarrKr2vGtfmpShe78yRrHRkSGoDAAA\nAEBbsIINLZo/f74WLFjgfxwfH6+NGzeGsCIACE+uUx4t/OtWffRZ4XnXUlNi9YNvZGtkZnIIKgMA\nAADQmpycHDkcDjkcDv/Y3LlzNW/evHbdl4AtTLCCDQCCa9XmY1r4162qrqkLGLcY0q3XDtM3rhuh\nyAh6CQEAAABdSWetYOtarTBx0Rq/GVo7bw4A0H7TJ6RrVGaKXl6yWVv3l/nHfab0lxX7tHlPqR7+\nZrYG9osLYZUAAAAAzmUYhux2e4fek1+tAwBwkfokxegX91+le78y5rzVageOVel7L32ov68+KJ+P\nxeIAAABAOCNgCxMej0cul0sul0umaYqdvwAQHBaLoa9Mu0S//t50ZfaPD7jmqffplaXb9LNX16q8\nqiZEFQIAAABozDRNf4bicrn8R261B2ewhQmaHABA6NXVe/Xmv3brrx/u17l/u9pjIvXYnRM1Pqtv\naIoDAAAAQJMDtIwmBwDQdew4WK6X3vpUpZWBq9YiIyz6ybcn67LhhGwAAABAKHRWkwO2iIYJm80m\nu90uu90uwzBodAAAITR6SIrmP3KNrp04MGC8rt6nXyzaoG2NmiIAAAAACK4zTQ7OfLQ3XJMI2AAA\n6BSx0ZH6/jcm6LE7JyrCevavW0+dV0//cZ12HCwPYXUAAAAAOhIBGwAAnWjqZQP05F2XK8J6dmWx\n2+PV0/+1VrsKKkJYGQAAAICOQsAWJugiCgBd16TRqXrszomyWM6GbDVur3766lrtPVIZwsoAAACA\nnqczuogSsIWJvLw8ZWdnKzs7W4WFhXI6naEuCQDQyJVj++vRO7LVKGNTjbteP8lbo/1HT4auMAAA\nAKCHcTqd/gwlOztbeXl57b4nXUTDBF1EAaB7+HDzMf36rU/la/S3rz0mUs/8x9UaMiAhdIUBAAAA\nPQBdRNFFtlceAAAgAElEQVQiuogCQPfwhQnpemj2eDX+Y9pVU6en/rBGh4scoSsMAAAA6CHoIgoA\nQBi4dmKG5t12WcCY85RHT/1hjY6WsMUfAAAA6G4I2AAACIEvTR6k//fVSwPGTrrc+tHCT3SslJAN\nAAAA6E4I2AAACJEbrhysB24eGzBW6XTrRwvX6HiZK0RVAQAAALhQBGxhwuPx+NvLmqYpelcAQPdw\n45QhuvcrYwLGKhy1+tHCNSourw5RVQAAAED4Mk3Tn6G4XC5/08j2IGALE3l5ef72soWFhXI62V4E\nAN3FV6Zdom/NHBUwVnayRj9a+IlKK06FqCoAAAAgPDmdTn+Gkp2drby8vHbf0zBZ6hQWPB6PP3HN\nzc2VJK1cuTKUJQEALtCf39+rxe/tChhLTYnVc/9vinonxoSoKgAAACB85OTkyDRN5efn+8dsNlu7\nO4mygi1M2Gw2f3tZwzBkGEaoSwIAXKCvfXG4vnFdVsBYcfkp/WjhJyqvqglRVQAAAEB4MQzDn6HY\n7fZ2h2sSARsAAF3KN67L0m05wwLGjpdV66k/rFGlszZEVQEAAABoCQEbAABdiGEYuvOGkbrlC0MD\nxo+VuvSjhWtU5XKHqDIAAAAAzSFgAwCgizEMQ3fPHKXcaUMCxo+WOPXUH9bIUd3+LkcAAAAAOg4B\nGwAAXZBhGLo3d4xmXp0ZMH6oyKEf562R6xQhGwAAANBVELCFCY/HI5fLJZfLJdM0RXNYAOj+DMPQ\nd24eq+uvHBwwfrCwSj9+Za1cNXWhKQwAAADoxkzT9GcoLpdLHk/7f3nd5QI2n8+nioqKUJfR7eTl\n5Sk7O1vZ2dkqLCyU0+kMdUkAgA5gGIb+45Zx+tKkjIDx/UdP6mevrNWpWkI2AAAA4EI4nU5/hpKd\nna28vLx239MwQ7DUad++fVq4cKGefPJJ9enTR1JDevj888/r7bfflsfjUVpamn784x/rmmuuCXZ5\n3ZLH4/Enrrm5uZKklStXhrIkAEAH8vlM/eadz7Ry09GA8ZGDk/X0d65UTFREiCoDAAAAuo+cnByZ\npqn8/Hz/mM1mk81ma9d9g76C7ejRo5ozZ47ee+89HT169h8JCxcu1H//93/L7XbLNE0dP35cDz74\noPbu3RvsErslm80mu90uu90uwzBkGEaoSwIAdCCLxdCDXx+v6ePTA8Z3HarQz/+4TrXu+hBVBgAA\nAHQvhmH4MxS73d7ucE0KQcC2ePFiVVZW6rvf/a7GjRsnqWH11WuvvSbDMPSzn/1Mmzdv1i9+8QvV\n19fr9ddfD3aJAAB0SVaLoe9/Y7yuvrR/wPj2A+X6xaL1ctd5Q1QZAAAA0LMFPWD7+OOPNXz4cM2d\nO1cREQ3bWdasWSOn06kJEyZo9uzZio2N1W233abLLrtMmzZtCnaJAAB0WVarRY/cnq0rx6YFjG/d\nX6ZnFq2Xh5ANAAAACLqgH9hSWlqq66+/PmDsk08+kWEYmjFjRsD40KFDA/bEAgAAKcJq0aN3TNT/\n9/pGbdhZ7B//bO8JPff6Rv3w7ssVGWFt12uYpim3x6vq2jq5aurkOlWn6to6Vdec/XCd/twrJlLj\nhvbW2Et6K5qz4AAAANADBf2nYLfbLas18If+devWSZKuuuqqgHGLpcs1OQUAoEuIjLDoibsm6pnX\nNujT3aX+8U27SvT8G5v0+JzLZZrm2SCs9nRIVhMYlLkaBWXnBmdeX9v7IC1ddUARVotGZSZrfFZf\nTcjqq8z+8ZwJCgAAgB4h6AFbSkqKDh486H9cUFCgffv2qX///srMzAyYW1hYqMTExGCXCABAtxAZ\nYdUP756kXyxary17T/jH1+8o1m1P/uOCArKOUO/1aev+Mm3dX6bX/7lTiXFRGj+8jyZk9dVlw/sq\nMS4qqPUAAAAAwRL0gG3cuHF6//339c4772jChAn6+c9/LsMw9OUvfzlg3pEjR7R+/XpdeeWVwS4R\nAIBuwxZp1Y++NUm/+ON6bd1f5h8PdrjWlJNOtz749Jg++PSYJOmS9ASNH96wum3E4GRFRrBSHQAA\nAOEh6AHbXXfdpffff18/+9nPJDWc8ZKQkKB77rnHP2ft2rV64oknVF9fr9zc3GCXCABAtxJti9CP\n75msn/3XOu04WN7u+1kthnrFRPo/7I0/RweOx0RH6HCRQ5/tOaFdh8pV720+2DtwrEoHjlXpf1bu\nU0yUVWMv6aMJWX00fkRf9e9tb3fdAAAAQKgEPWDLzs7WSy+9pN/85jc6duyYMjMz9eyzz6pPnz7+\nOeXl5SopKdEtt9yimTNnBrvEbsnj8cjj8UhqCC0BAD1LdFSEfvLtyfrtn7do064SRVotTQdkZz6i\nI2WPbfR1ozlRNusFnZ02aVSqbssZrhp3vbbtL9Nne0q1eU+pjpdVN/ucGrdXG3YW+5s0pKbEavzw\nvhqf1VeXDuut2OjIdv83AQAAAJpimqZcLpf/sc1mk81ma9c9DbMLpjGlpaXas2ePpk6dGupSuo35\n8+drwYIF/sfx8fHauHFjCCsCAPR0xeXV/rDt831lqnHXt+l5VouhEYOTNT6r4fy2SwYkymKhWQIA\nAADaLycnRw6HQw6Hwz82d+5czZs3r1337ZIBGy5c4xVsZ7bVrly5MpQlAQDgV+/1ac/hSn/gtv/Y\nSbX1J5C4WJvGD++j8Vl9NT6rj1ISYjq3WAAAAIStnJwcmaap/Px8/1hHrGAL+hZRSaqpqdG7776r\nmTNnym4/e+bKihUr9Oabb6q0tFSjRo3Sgw8+qPT09FCU2O00fjNcyLYeAACCIcJq0eghKRo9JEV3\n3DBSVS63Pt93Qpv3lOqzPSdU4aht9rnOUx59tKVQH20plCQNGZCgK8em6YoxaRqUGsffewAAALgg\nhmEE5FEdIegBW3V1tebMmaOdO3dq7NixGj16tCTp3//+tx566CH/+WH79+/XunXrtHTpUiUnJwe7\nTAAA0IkS7FGaNj5d08anyzRNHSl2avPp1W07Dparrt7X7HMPFlbpYGGV3vzXbqWl9NLkMam6Ykya\nRgxOlpWtpAAAAAiBoAdsb775pnbs2KGpU6cqNTXVP/7CCy9IkmbOnKmZM2dq2bJlys/P1+uvv67v\nf//7wS4TAAAEiWEYGpQWr0Fp8br5C0NV66nXjoPlp1e3lepoiavZ5xaVV2vpqgNauuqAEu1RmjQ6\nVVeMSdWlw/rIFmkN4ncBAACAnizoZ7DdeuutOnHihN5//33/lsYtW7Zo9uzZGjRokN577z1ZLBZJ\n0vXXX6/o6GgtXbo0mCV2ezk5OZIattwCANDdnais0Wd7S/2B26na1pslxERZNWFEP10xJk0TR/aT\nPYaupAAAAOi8zCToK9iOHz+uKVOmBBwe9/HHH0uSbrrpJn+4Jknjx4/X//3f/wW7RAAA0IX0SYrR\ndZMH6brJg1RX79O2A2Vat61I63cUqcLhbvI5NW6vPvn8uD75/LisFkNjh/bWlWPTNHl0Kk0SAAAA\n0OGCHrA5nU7FxcUFjK1bt06GYWjq1KkB4zExMf7OmAAAAJERFk3I6qsJWX31wC3jtO9opdZuK9K6\n7UUqPFHd5HO8PlNb9p7Qlr0ntPB/t2p4RqKuGNPQJGFgv7gmnwMAAABciKAHbHFxcSopKfE/rqys\n1JYtWxQXF6dx48YFzC0rK1NCQkKwSwQAAN2AxWIoa1CysgYl6+6Zo3W0xKl12xvCtr1HTjb7vL1H\nTmrvkZN6Y9kuDehj1xVjUnXl2DQNG5gkC00SAAAAcBGCHrANHz5ca9as0cGDBzVkyBD97ne/U319\nvaZOnSrDOPtDbU1NjdavX6/MzMxglwgAALqhgf3iNLBfnG7LGa7yqhqt31GstduKtG1/mby+po+c\nLTzh0v9+sF//+8F+JcdHafLoNF0xNk1jL+mtyAhLk88BAAAAzhX0gO3mm2/W+vXrNXPmTCUkJOjk\nyZOyWCz69re/7Z9z+PBh/fSnP5XD4dAXv/jFYJcIAAC6uZSEGM24KlMzrsqUq6ZOm3aVaN22In26\nu0S1Hm+Tz6lwuPXe2kN6b+0hxUZHaOLIfpo4sp8Gp8Wrfx+7ouhKCgAAgGYEPWCbNWuWtm/frjff\nfFOVlZWKiIjQT3/6U40aNco/Z926dVq3bp1GjRqlO+64I9glAgCAMGKPidQXJqTrCxPS5anz6vN9\nJ7R2W5E27CxWlavps15P1dbro88K9dFnhZIkw5D6JsVqYL84pfe1N6yW6xungf3sssfamrwHAAAA\neg7DNM2m90x0shMnTqiwsFAZGRlKTk4OuLZv3z7l5+fr3nvv5Qy2i9BZLWcBAAgnXp+p3Ycq/Oe2\nFZefuqj7JMZFaWDfOKX3szd8Ph3ApSREBxx/AQAAgNDrrMwkZAEbOg8BGwAAF8Y0TR0ubmiSsHZb\nkQ4WVrX7njFREf6wzb/qrV+cUpNjZbVyvhsAAEAodFZmEvQtoo2VlZVpy5YtKiwsVG1trWJjY5We\nnq4JEyawcu0CeTweeTwN21zITAEAuDCGYWhwWrwGp8Vr9peyVFpxSht3lehQkUNHS5w6Vupsdjtp\nc2rc9dp39KT2HQ3saBphNZTW266BZ1a89YvTwL52DehrV7QtpD+aAQAA9Aimacrlcvkf22w22Wzt\nO/YjJCvYSktL9Ytf/EIrV66Uz+c773pkZKRmzZqlxx57THa7PdjldUvz58/XggUL/I/j4+O1cePG\nEFYEAEB4cVR7/GHb0RKXjpY6dazEqdLKmg65v2FIqSm9lNk/Xpn9E5SZ1vC5T1IMW00BAAA6SE5O\njhwOhxwOh39s7ty5mjdvXrvuG/SAzel06tZbb9XRo0dlmqaSkpI0YMAARUVFqaamRoWFhaqqqpJh\nGBo3bpwWL17c7hSxJ2i8gi03N1eStHLlylCWBABAj1DrrtexEy4dK3HqaKnLH8IdP1Etr6/9P2b1\nionU4LT4s8Fb/3hlpMbT1RQAAOAi5OTkyDRN5efn+8c6YgVb0PchvP766zpy5Iguv/xy/fCHP9TI\nkSPPm/PZZ5/pmWee0datW/XOO+/ozjvvDHaZ3U7jNwO/5QYAIHiioyI0ND1RQ9MTA8brvT4Vl1fr\naInr9Kq3hgCusNSpGre3zfevrqnTjoPl2nGw3D9mMaQBfe3KTEvQ4EbBW3I8jRUAAABaYxhGh++Y\nDPoKtltuuUXl5eVavnx5i+mgy+XSddddp4yMDC1ZsiSIFXZ/NDkAAKDrMk1TZSdr/VtMz6x6O1Ls\nlPPUhZ3zdq74XraAlW6Z/ROU3jdOkRE0VQAAAJDCqMnBkSNHNGXKlFaX3tntdk2YMEHr168PUmUA\nAACdzzAM9UmKUZ+kGE3I6usfN01TFY5aFRx3qOB4lf/z8RMutXWnqaPao8/3lenzfWX+sQirofS+\nccrsH6/BaWeDt8S4qI7+1gAAAHqsoAdsbre7zcvwkpKSVFtb28kVAQAAhJ5hGEpJiFFKQowmjuzn\nH6/11OtIsVMFxx06dLxKBUUNn6tr69t033qvqUNFDh0qckg65h/vlxyrmVOG6PorB9G9FAAAoJ2C\n/tNUSkqK9u7d26a5Bw4cUEpKSidXBAAA0HVF2yI0PCNJwzOS/GOmaaq0ssYfuJ1Z8VZUVt3m+5ZU\nnNIf87frf1fu081fGKoZVw1WdBRBGwAAwMUI+k9REyZM0Hvvvad//vOfuvHGG5ud9/e//12bN2/W\nzJkzg1gdAABA12cYhvolx6pfcqwmj0nzj9e463W4KHCL6aEih2o9zTdVOOly67V/7NBfP9ynm6cP\n1YyrMxVD0AYAAHBBgt7kYOvWrZo9e7ZM09S0adM0bdo0paenKzo6WjU1NTp8+LA++OADrV+/Xlar\nVe+8845Gjx4dzBK7PZocAACAM3w+U8UV1WcDt+MO7TlcqZMud5Pz42JtuvkLl+jGqzMVGx0Z5GoB\nAAA6V2dlJkEP2CTpz3/+s37+85+rvr6+yVbypmkqKipKTz/9tGbNmhXs8ro9AjYAANCSunqvlm84\nor+s2KeykzVNzomLjdRXpl2imVOGqFcMQRsAAAgPYRWwSdLBgwf11ltvadOmTTp27JhqamoUGxur\njIwMTZ48Wd/4xjc0cODAUJTW7RGwAQCAtqir92nFxiP6y4q9Kq1sOmjrFROpr0wdopumXSI7QRsA\nAOjmwi5gQ+chYAMAABei3uvTyk1H9ef396qk4lSTc3pFR+imqZcod9oQxcXaglwhAABAx+iszMTS\noXfrYEePHtXGjRtDXQYAAEBYi7BadN3kQfrDEzl66OvjlZbS67w51bX1WrJ8j779y+Va/N4uOao9\nIagUAACga+rSAdvixYs1Z86cUJcBAADQI0RYLfripAwtfPxaff8bEzSgz/lBW427Xn9+f6/ufebf\nev2fO1XVTLMEAACAnqRLB2zdmdvt1osvvqgvfelLGj9+vG699Va2bAIAgG7BarXo2okD9bvHcvTw\n7dlK72s/b06N26v/WblP9z6zXK/9fYdOOgnaAABAz0XA1kmefvppLV26VE899ZTeffddXXXVVZo3\nb562bdsW6tIAAADaxGox9IUJ6Vrw6LV69I5sDewXd96cWo9Xf/1wv779zHL9MX+7Kh21IagUAAAg\ntAjYOoHL5VJ+fr6+973vafr06crIyNDDDz+s1NRULVu2LNTlAQAAXBCrxdC08ela8Mg1enzORA1K\nPT9o89R5tXTVAd37zHK9+u42VRC0AQCAHiQi1AUEU0FBgR5//HFt3bpVN998s5577rlm5y5fvlx/\n+tOftGvXLtXW1qp///667rrrdN999yku7vwfKhuz2+366KOPZLcHbqfo3bu3KisrO+R7AQAACDaL\nxdCUSwfoqrH9tW57kZYs36OC446AOZ56n/I/Oqj31hzSl68YpK9eO0wpCTEhqhgAACA4ekzAtnjx\nYr344ouqr6+XYRgtzv3973+v3/72t+rbt69uvfVWJSYmatOmTXrllVf0wQcf6O233z4vPDtXcnJy\nwOOSkhLt3r1bs2bNavf3AgAAEEoWi6GrxvXXFWPStGFnsd7+9x4dLKwKmFNX79M/Pi7Qv9Ye1nWT\nM3Td5EEanBYvq5UNFAAAIPz0iIDt4Ycf1rJlyzRjxgxdeumlevbZZ5udu2fPHi1YsECpqan629/+\npqSkJEnS/fffrxdffFGvvvqqXn75ZT311FNtfn2fz6cf/vCH6tOnj2655ZZ2fz8AAABdgcVi6Iox\n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\nt0fswUZERERERERERNRdMcBGRERERERERETUDgywERERERERERERtQMDbERERERERERERO3AABsR\nEREREREREVE7MMBGRERERERERETUDgywERERERERERERtQMDbERERERERERERO3AABsRERERERER\nEVE7MMBGRERERERERETUDgywERERERERERERtQMDbERERERERERERO3AABsREREREREREVE7MMBG\nRERERERERETUDgywERERERERERERtQMDbERERERERERERO3AABsREREREREREVE7MMBGRERERERE\nRETUDgywERERERERERERtQMDbERERERERERERO3AABsREREREREREVE7MMBGRERERERERETUDgyw\nERERERERERERtQMDbERERERERERERO3AABsREREREREREVE7MMBGRERERERERETUDgywERERERER\nERERtQMDbERERERERERERO3AABsREREREREREVE7MMBGRERERERERETUDgywERERERERERERtQMD\nbERERERERERERO3AABsREREREREREVE7aKp7Ak/jxIkTOHDgAG7fvo3KykrY2dlh6tSpeOutt2Bk\nZNSmMa5du4bdu3cjPj4eRUVFkEqlGD16NFauXAknJyel/kVFRQgJCcHPP/+M7OxsVFRUwNLSEj4+\nPliyZAn69++vdM6dO3ewfft2xMXFoaioCGZmZhgzZgxWrFgBZ2fn9v4Y2qSyWobryflwtjWBsYF2\nl1yTiIioNaWPq/FL4gPYWRrC3V6q7ukQEREREXWYHhNg27ZtGzZv3gwrKyu89NJLkEqliIuLw86d\nO3HmzBkcPHgQhoaGrY4RGhqKdevWQRAETJ48GQMGDEBubi7CwsJw5swZ7N+/H4MHD1b0z83NxRtv\nvIGsrCx4e3vjtddegyAIuHbtGsLCwnDkyBHs3r0bI0eOVJxz4cIFLF++HBoaGpg5cyYcHR2RkZGB\nw4cP4/Tp09i7d6/oGp2luKwKH/6/CwAAM2NduNgZw9nWGM52JnCxNUY/K0NoSpjASEREXaOsogar\n/hGN+48eAwA8HKQI8HeF3zA7aGlK1Dw7IiIiIqL2EeRyuVzdk3iSxMREzJ07F1ZWVggLC4Opqani\n2MaNG7Fr1y4sXLgQ69ata3GMwsJCPP/886isrMTOnTvh7++vOBYXF4fFixfDzc0Nhw8fVrSvWLEC\n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\n/nvEx8ejqKgInTp1UjtGlQULFsDDwwP/+c9/sGvXLoiiiC5dumDx4sUYP368Sv9evXph79692Lhx\nI06ePImff/4Z7du3x9ixY/H555/D3t6+YX8wRERERDrsZeZ4gOZ5nrW1NX744Qds2rQJhw8fxoUL\nF2Bqaop+/fohJCREbZ219957T/GeQ4cOIT8/H/b29pg0aRJCQkLQrl27RntuIiIial10JsEGVG7B\n1KZ+WVhYGMLCwtS2DRw4UO0BBDUZPnw4hg8frnV/V1dXhIeHv9Q9iIiIiNoqbed4QM3zPEtLS8yf\nPx/z58/X+t6vvvoqvv32W637ExEREamjEzXYiIiIiIiIiIiIWipBFEWxuYMgIiIiIiIiIiLSVVzB\nRkREREREREREVA9MsBEREREREREREdUDE2xERERERERERET1wAQbERERERERERFRPTDBRkRERERE\nREREVA9MsBEREREREREREdUDE2xERERERERERET1wAQbERERERERERFRPTDBRkREREREREREVA9M\nsBEREREREREREdUDE2xERERERERERET1wAQbERERERERERFRPTDBRkREREREREREVA9MsBERERER\nEREREdUDE2xERERERERERET1wAQbERERERERERFRPTDBRkREREREREREVA/6zR0ANaz4+Hjs2rUL\nN2/eRElJCZycnDB06FBMnToVFhYWzR1enaWlpWHBggW4du0a/P39ERYW1twh1Ykoiti3bx9iYmJw\n+/ZtyGQytG/fHn379sW0adPQtWvX5g6xToqLi7Fv3z788ssvuH//PvLy8mBjY4M33ngDQUFB6N27\nd3OHWG9yuRwBAQG4fv26Tv4bjI2NxaJFi2rsExAQgH/84x9NE1ADys/PR0REBA4fPoxHjx7BwsIC\nXl5emDp1qs7923vnnXfw8OHDWvvt3LkTffr0aYKI6q+wsBBbt27FkSNHcPfuXZSXl8PW1hbe3t4I\nDg7Gq6++2twhvrSSkhJs3boVv/76K+7evQsA6NKlC8aMGYPx48dDEITmDZB0CuduLRvnbrqLc7eW\nifO2lo9zt7pjgq0ViYiIwPr162FnZ4fRo0dDKpUiMTERkZGRSEhIwJ49e2Bubt7cYb60nTt3Ijw8\nHOXl5Tr9R4soivjiiy9w5MgRtG/fHqNHj4alpSUuX76M/fv349dff8X27dvRs2fP5g71peTl5WHK\nlCm4fv06PDw8MGbMGBgZGeHmzZs4dOgQDh48iNWrV2PYsGHNHWq9fPvtt7h+/bpO/xsEgIEDB8LH\nx0dtm7u7exNHU3+PHz/G+PHjkZGRgSFDhmDMmDFIT0/Hzz//jFOnTiEiIgKDBg1q7jC1NmPGDBQU\nFGhs37JlC3Jzc2Fvb9+EUdVdfn4+xo0bh7S0NLi7u+OTTz6BlZUVbt68iQMHDuDAgQNYv3493n33\n3eYOVWuFhYUIDAxEUlISnJ2dMW7cOFhYWODXX3/F119/jUuXLmHNmjXNHSbpCM7dWjbO3Th3awla\n09yN87aWj3O3ehKpVUhKShJ79OghDh48WHzy5IlS25o1a0Q3Nzdx6dKlzRRd3c2ZM0d0d3cX58yZ\nI27fvl10c3MTFy5c2Nxh1Ul0dLTo5uYmjhw5UiwqKlJqW7dunejm5iYGBQU1U3R1t3TpUtHd3V1c\nvHixStvevXtFNzc38e23326GyBrOxYsXRQ8PD3H06NE6+28wJiZGdHNzE7/99tvmDqVBTZkyRXR3\ndxcPHjyodP38+fPia6+9JoaGhjZTZA3v119/Fd3c3MRVq1Y1dyha+/bbb0U3Nzdx6tSpKm0///yz\n6ObmJg4ZMqQZIqu71atXi25ubuLEiRNFmUymuF5aWipOnz5ddHd3Fw8dOtSMEZKu4Nyt5ePcTXdx\n7tYycd7W8nHuVj+swdZKREVFQRRFBAcHw9raWqlt+vTpMDY2RlxcHGQyWTNFWDePHz/GypUrER4e\nrtPbJADgypUrMDMzw7Rp02BiYqLUNn78eADA5cuXmyO0evHy8sK0adPw+eefq7R98MEHAIDMzExU\nVFQ0dWgNorCwEPPnz4e9vT1mzpzZ3OHQC5KSknDq1CkMHjwY77//vlJbnz59cPnyZfzrX/9qpuga\nVn5+Pv75/9u7/5go6wcO4O+HHwoywSwzQhCXtxsI/UAgBSRhCArOUKsxaYcyhqwmC1fNf3QTKTDt\nRmXDoYJ3zh9b1o3aGAx0kF3pDc2UKxOWHgJCxc+w4ATv+4c7Uu8o4MznPnzfr80/vM/zxxuZz/N+\nPvd8ns/OnfD390dubq7cccatpaUFkiQhLi7OZiw+Ph4A0NraKtT5obq6GpIkITc3F9OmTRv93N3d\nHdu3bwcAHD9+XK54JBB2N+fH7ibOufle7G7Oib1NDOxujuES0Sni3LlzAGD38WEvLy+EhoaioaEB\nly9fRnh4+KOON2klJSVCLo2wJz8/H/n5+XbHZsyYAeDuUgSLxSLUo+wvv/zymGM///wzACAoKAgu\nLmLO5xcUFKC9vR3l5eVC/V7+jdlsRm9vL2bOnGlz0yCK2tpaSJKElStXjn7W3d0Nd3d34W/qHrRn\nzx50dXXh4MGDmD59utxxxk2pVOLLL7/EL7/8YjN248YNAIBCoRDq/HDz5k0Ad9/b8aCnn34aTz31\nFBoaGnDnzh2hfi569NjdnB+7m5jnMHY358TeJgZ2N8d+LnH+VWhMw8PDMJlMkCQJAQEBdo8JDAwE\n8PdFUxRTpaD9m9OnTwMAIiMjhS4CAwMDaG1thdFoRFlZGXJycuDr64uCggK5o01KdXU1dDodVCoV\nXnzxRbnjPBRGoxEZGRkICwtDbGwswsLC8Oqrr6K+vl7uaBP2448/Arh7sdy3bx+ioqIQFRWFiIgI\nrF69GjU1NTInfDiam5tx8uRJLF++HNHR0XLHmZANGzZg0aJFOH78OD7++GNcuXIFJpMJp06dwjvv\nvANPT09s27ZN7pgTYr0udXd32x2fPn06hoeHR0sokT3sbuJjd3NO7G7Oi71NDOxujuEE2xQwMDCA\nkZEReHh43PfI4718fHwAAH19fY8yGo1De3s7PvjgA7i6uiIvL0/uOA75/PPPkZCQgPXr10OtVmPZ\nsmXQ6XQICgqSO9qE/fbbb9ixYwcUCgW2bt0qd5yHpq6uDj4+PsjPz4darca6detgNBqRk5MDnU4n\nd7wJ6ejoAACo1WrodDpkZWVBrVZj48aNuH79OrZs2SLcz2RPcXExAODtt9+WOcnEeXp64tixY0hP\nT0dJSQlSU1ORlJSEN998Ey4uLjhx4gSWLl0qd8wJiYiIGN1V8EEGg2F0Zypeb+mfsLuJjd3NObG7\nOTf2NjGwuzmGS0SngMHBQQB31xCPZdq0abBYLKPHknNobm5GdnY2urq6sH37duF2oXpQfHw8/Pz8\n0Nvbi7Nnz6K6uhrff/89PvroI4SGhsodb0K2bduGP//8E3v27Bnz5kckwcHBeOuttxAaGnrft2nJ\nycmIiYlBXl4e3nvvPSQkJAjzmP6tW7dgsVjQ3t6OioqK0W+nkpOTERYWhtzcXBQVFSE5OVm4x/Ot\nLl++jNraWqxYsQLPPPOM3HEm7Pbt29ixYwcqKioQHR2NlJQUzJgxA1evXsWxY8eQlZWFffv24bnn\nnpM76ri98cYbqKurg1arhcViwapVq+Dh4QG9Xo8DBw4gMDAQJpMJIyMjckclJ8buJi52N+fF7ubc\n2NvEwO7mGD7BNgV4eHgAuPufYSxDQ0OQJGn0WJKfXq9HWloafv31V+zcuRMbNmyQO5LD/P39kZCQ\ngFdeeQV79+5FeXk5Ojo6kJeXB7PZLHe8cdNoNPj222+xZcsW4bY/H4tSqUROTo7dR9VXrVqF0NBQ\n3Lp1C2fOnJEh3eS4urpCkiRkZGTYLElKTEzEggUL0N/fj4aGBpkSOs76/pj09HS5o0zKoUOHUFFR\ngfXr1+PQoUNYt24dVq5cidzcXBw5cgQ9PT3Iy8sT6iXuQUFBOHDgAPz8/KDVapGWlobU1FRoNBrs\n2rULCoUCwN13aBGNhd1NTOxuzovdzfmxt4mB3c0xnGCbAmbOnAk3Nzf89ddfY14Ie3p6AMBmlyqS\nh0ajQXZ2NlxdXVFaWorXXntN7kj/ifDwcERERKCtrQ0Gg0HuOOPS1NQEtVqNxYsXIysr674xi8Ui\nU6r/nnUpSGtrq8xJxs+6fOrxxx+3O269WLa3tz+yTA9Tf38/amtrMXfuXCxZskTuOJNy4sQJSJKE\nTZs22YwpFAqEh4fj5s2buHDhggzpJm/JkiWoqanBF198gdLSUpw8eRL19fVYsWIF2traAAC+vr4y\npyRnxu4mHnY358XuJkZ3Y28TA7ubY7hEdApwdXXFggUL0NzcjGvXrkGpVNocY90FRMT3KUw1+/fv\nR3FxMebPn4/S0lLMnz9f7kiTNjw8jKqqKvT29uL111+3e4z1xsD63gVnV11djaGhIZw/fx7BwcE2\n45IkQafTQafTITIyElqtVoaUD5/1kWiRdqVauHAhLl68OLoz0IOsy6pEXWZQX18Ps9mM2NhYuaNM\n2u+//w5g7DJtPT9Yi41ogoKC7ruuDg4Oorm5GfPmzRNiuQ7Jh91NLOxuzo3dTYzuxt4mBnY3x3CC\nbYqIiYlBU1MT6urqbEpaV1cXGhsbMWvWLISEhMiUkADg6NGjKC4uRnBwMMrLy0e/yRGVm5sbioqK\n0NXVhaVLl9p914D1BuHJJ5981PEmJSwsDJmZmXbHOjo6UFlZCYVCgWXLlo2585sz2rp1K0wmE8rL\ny+Ht7X3f2PDwMM6ePQsAQp0jYmJi8Nlnn6G+vt7mdzYyMjK68569G1cR6PV6SJKEyMhIuaNM2pw5\nc9DR0QGTyWT3KZyWlpbR40TR1NQEg8GAxYsX2yxDqqqqgtlsRkJCgkzpSCTsbmJgd3N+7G5inCPY\n28TA7uYYLhGdItLS0uDu7g6tVovOzs77xvbu3YuRkRGkp6fDzY1zqnK5cuUKCgsL4evri7KyMuEL\nmlVSUhIsFguKiopslrlUVFTg6tWrmDVrljAXm6ioKLz77rt2/6SlpQG4W2Tu/bsIJEmC0WhEUVGR\nzXKJTz75BG1tbVAqlXjhhRdkSjhx8fHx8Pf3h8FgQGVl5X1jhw8fRmdnJ4KCgoQtatbt7BcuXChz\nkslLSEiAxWJBSUmJzbum9Ho9jEYjfHx8hDk/AIDRaMSuXbuwe/du3LlzZ/Tzzs5OqNVqeHh4QKVS\nyZiQRMHu5vzY3cQ4N7O7idHd2NvEwO7mGMkylRem/585evQoCgoK8Nhjj2HNmjXw9vbGN998gwsX\nLiA8PBxlZWVC7ahj/cbJqrGxEZWVlQgJCUFycvLo57GxsUKcyLKzs/H1118jLi4OERERYx6XkpKC\nuXPnPsJkjhkYGIBKpcJPP/2EgIAAvPTSS/D29kZjYyPq6urg5uYGtVqNxMREuaM6zGAwQKVSYe3a\ntSgsLJQ7zoR0d3cjLS0NN27cgFKpRHR0NLy8vKDX63H+/HnMmTMHhw8fFm7Ho4sXLyIzMxNDQ0NY\ns2YNAgMDcenSJZw6dQo+Pj7QaDTCvuz4+eefx9DQEM6dO2fzzbUo+vv7kZ6ejubmZgQGBiIxMRFe\nXl5oampCVVUVLBYLPvzwQyQlJckdddzMZjNUKhV++OEHLFq0CMuXL8cff/yBr776Cn19fdi9ezdW\nr14td0wSBLubc2N3Y3eT01Tsbuxtzo/dzTGcYJtizpw5g/LycjQ2NmJoaAgBAQFISUlBZmamUAUN\n+PuCKEnSPx5XWFiI1NTUR5Rq8uLj48d858C9tFrtP5Y4Z2Q2m6HRaFBVVYXr16/DbDbjiSeeQERE\nBDZu3Gj3fRgiMhgMyMjIwNq1a/H+++/LHWfC+vr6cPDgQZw+fRqtra2QJAl+fn6Ii4tDZmYmZs+e\nLXfESWlpacGnn36K7777Dj09PZg9ezZiY2OxefNmzJs3T+54kzI8PIyQkBC4uLjg0qVLQj/BMjg4\nCK1Wi+rqaly7dg23b98ePT9s2rRJyPdLDQwMYP/+/aipqUFnZyc8PT0RFhaGzZs349lnn5U7HgmG\n3c15sbuJj93N+bC3OT92t8njBBsREREREREREZED+A42IiIiIiIiIiIiB3CCjYiIiIiIiIiIyAGc\nYCMiIiIiIiIiInIAJ9iIiIiIiIiIiIgcwAk2IiIiIiIiIiIiB3CCjYiIiIiIiIiIyAGcYCMiIiIi\nIiIiInIAJ9iIiIiIiIiIiIgcwAk2IiIiIiIiIiIiB3CCjYiIiIiIiIiIyAGcYCMiIiIiIiIiInIA\nJ9iIiIiIiIiIiIgcwAk2IiIiIiIiIiIiB/wPQgFzsY49Z8AAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f3c558be8d0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "ax = plt.subplot2grid((2,2), (0,0), colspan=2)\n",
    "ax.plot(avg_loss)\n",
    "ax.set_ylabel(\"Avg. Loss\")\n",
    "ax.set_yscale(\"log\")\n",
    "ax = plt.subplot2grid((2,2), (1,0))\n",
    "ax.plot(token_scores)\n",
    "ax.set_ylabel(\"Token Scores\")\n",
    "ax = plt.subplot2grid((2,2), (1,1))\n",
    "ax.plot(sent_scores)\n",
    "ax.set_ylabel(\"Sent Scores\")\n",
    "plt.tight_layout()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[(('RT', 'O'), 'O'),\n",
       " (('@shashiranjanttv', 'O'), 'O'),\n",
       " ((':', 'O'), 'O'),\n",
       " (('@shashiranjanttv', 'O'), 'O'),\n",
       " (('second', 'O'), 'O'),\n",
       " (('is', 'O'), 'O'),\n",
       " (('Bawana', 'U'), 'O'),\n",
       " (('constituency', 'O'), 'O'),\n",
       " (('on', 'O'), 'O'),\n",
       " (('Feb', 'O'), 'O'),\n",
       " (('4', 'O'), 'O'),\n",
       " (('-', 'O'), 'O'),\n",
       " (('Final', 'O'), 'O')]"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "zip(test[2], predict(test[2], word_rep=word_rep))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Done\n",
      "processed 46469 tokens with 1499 phrases; found: 214 phrases; correct: 117.\n",
      "accuracy:  95.08%; precision:  54.67%; recall:   7.81%; FB1:  13.66\n",
      "                 : precision:  54.67%; recall:   7.81%; FB1:  13.66  214\n"
     ]
    }
   ],
   "source": [
    "print_sequences(train, [predict(s,word_rep=word_rep) for s in train], \"train.dynet.tsv\")\n",
    "! cat train.dynet.tsv | tr '\\t' ' ' | perl -ne '{chomp;s/\\r//g;print $_,\"\\n\";}' | python data/conlleval.py"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Done\n"
     ]
    }
   ],
   "source": [
    "print_sequences(test, [predict(s,word_rep=word_rep) for s in test], \"test.dynet.tsv\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {
    "collapsed": false,
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "processed 16261 tokens with 665 phrases; found: 69 phrases; correct: 17.\r\n",
      "accuracy:  92.98%; precision:  24.64%; recall:   2.56%; FB1:   4.63\r\n",
      "                 : precision:  24.64%; recall:   2.56%; FB1:   4.63  69\r\n"
     ]
    }
   ],
   "source": [
    "! cat test.dynet.tsv | tr '\\t' ' ' | perl -ne '{chomp;s/\\r//g;print $_,\"\\n\";}' | python data/conlleval.py"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x7f3c723b8f50>"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAuIAAALqCAYAAABwsDFSAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAAPYQAAD2EBqD+naQAAIABJREFUeJzt3X2MVYWd//HvZcYR5ZkWhBrBRg3IMm54kKaAkrW2Rm1t\nCdpMK1FLdSStmxVNrEZt1CJQEYLarQYbCaiLSdEpTUqhrRYiNEpEmgWqiJFqfJjFsAVWioMz3P2j\ngf3xgxm4c+/wheH1+nPOmTMfc1t8ezj3TqFYLBYDAAA4prpkDwAAgJOREAcAgARCHAAAEghxAABI\nIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgATV2QM41O9///t45pln4o033ohPP/00vvCF\nL8TXvva1uOmmm6JHjx7Z8zhKW7dujR/96Efxn//5nzFx4sSYOXNm9iSOUrFYjCVLlsQLL7wQb731\nVjQ1NUW/fv1izJgxUV9fH+ecc072RI7Snj17YsmSJfGb3/wm3nvvvdi1a1d87nOfi5EjR8bkyZNj\n1KhR2RMpUUtLS9TV1cWGDRv82XqCaGhoiLvuuqvNc+rq6uK+++47NoOOI0L8OPPzn/88Hn300ejf\nv39MmjQpevfuHa+99lrMnz8//vjHP8bixYuje/fu2TM5gqeffjrmzJkTzc3NUSgUsudQgmKxGLfc\ncku8+OKL0a9fv5g0aVL07Nkz1q9fH0uXLo3f/e53sXDhwrjggguyp3IEu3btiu9///uxYcOGGDZs\nWFx99dVx6qmnxhtvvBErVqyI5cuXx+zZs+PrX/969lRK8Nhjj8WGDRv82XoCGjduXIwfP/6wx4YO\nHXqM1xwfhPhxZPPmzfGzn/0sBgwYEA0NDdGnT5+IiLj55ptjzpw58eSTT8a8efPinnvuSV5KW26/\n/fZYtmxZXHHFFfHP//zPMWPGjOxJlKChoSFefPHFGDp0aCxevDhOO+20A8ceeeSRePzxx2P27Nnx\n9NNPJ67kaDz66KOxcePGuOaaa+InP/nJQceWLFkS99xzT8ydO1eIn0Bef/31ePLJJ2P48OGxcePG\n7DmUaMSIEfG9730ve8ZxxTPix5HnnnsuisVi3HDDDQcifL+pU6dG165d41e/+lU0NTUlLeRobNu2\nLX7605/GnDlzPEp0Avrzn/8c3bp1i/r6+oMiPCLiO9/5TkRErF+/PmMaJaqtrY36+vr4wQ9+cMix\nyy+/PCIiGhsbY9++fcd6Gu2we/fuuOOOO+KMM86IH/7wh9lzoCLcET+OvPrqqxERh/1rm27dukVt\nbW289tprsWHDhhg9evSxnsdRevzxxz0+dAJ74IEH4oEHHjjssdNPPz0i/vH4SrFY9Ffjx7lvfvOb\nrR7bvHlzREScf/750aWLe1IngunTp8eHH34YCxYs8P+9E9zevXtjx44d0aNHj0NueJxs/OlznGhu\nbo533303CoVCDBo06LDnnH322RHxf/8C4fgkwjuvl156KSIixowZIwROMJ988km8//77sWnTpnjq\nqadi6tSpMXDgwJg+fXr2NI7CihUroqGhIa677rr40pe+lD2Hdtq0aVNcf/31MXLkyLj44otj5MiR\ncc0118SqVauyp6VxR/w48cknn0RLS0ucfvrpUVNTc9hzevXqFRERO3fuPJbTgIj48MMP46GHHoqq\nqqqYNm1a9hxK9Pzzzx/4dI3q6uq47LLL4t57743evXsnL+NIPv744/jxj38c5513Xtx2223ZcyjD\nypUr46tf/Wo88MAD0bVr11izZk00NDTE1KlTY8aMGTFx4sTsicecED9OfPrppxERccopp7R6Tk1N\nTRSLxQPnAsfG22+/HfX19bF9+/a49957fWLKCeiSSy6JM888M3bs2BGvvPJKrFixItavXx+PPPJI\n1NbWZs+jDXfeeWf8/e9/j9mzZ7d6o4rj27Bhw+LWW2+N2traGDdu3IGvX3HFFTF+/PiYNm1aPPjg\ng3HppZeedO+t8mjKcaJr164REfHZZ5+1ek5TU1MUCoUD5wIdb82aNVFXVxfbtm2L+++/P7773e9m\nT6IdzjrrrLj00kvj6quvjocffjgWLFgQjY2NMW3atNi7d2/2PFqxcOHC+NOf/hT/+q//etJ+vF1n\nMGTIkJg6depBEb7f5ZdfHrW1tbF79+54+eWXE9blEuLHiR49ekR1dXXs2bOn1X8p/O1vf4uIOOQT\nVYCOsXDhwqivr4+qqqqYP39+fPvb386eRIWMHj06Lrzwwvjggw9i7dq12XM4jC1btsTcuXNj1KhR\nceONNx50rFgsJq2iI5x//vkREfH+++8nLzn2PJpynKiqqoovfvGL8fbbb8fWrVtjyJAhh5zzzjvv\nRMT//Q8W6DhPPPFEzJs3LwYPHhzz58+PwYMHZ0+iBM3NzbF8+fLYsWNHTJ48+bDn7L+p0djYeCyn\ncZRWrFgRTU1NsW7duhg2bNghxwuFQjQ0NERDQ0OMGTMmFi1alLCSSmhpaYmIOCk/QUWIH0fGjx8f\nW7ZsiZUrVx4S4tu3b4+NGzdG7969Y/jw4UkL4eTw7LPPxrx582LYsGGxYMGCA2+U5sRRXV0ds2bN\niu3bt8eXv/zlOOeccw45Z//Njf79+x/reRyFkSNHxpQpUw57rLGxMZYtWxbnnXdeXHTRRa1+2hjH\nh9tuuy3efffdWLBgQfTs2fOgY83NzfHKK69ERJyUfSPEjyN1dXXxzDPPxKJFi+Jb3/pWnHHGGQeO\nPfzww9HS0hLXXnttVFd72aCjvPnmmzFz5swYOHBgPPXUUyL8BHbZZZfFs88+G7NmzYp///d/P+iN\nfkuXLo233nor+vTpE2PGjElcSWvGjh0bY8eOPeyxtWvXxrJly2L48OFxxx13HONllKpQKMSmTZti\n1qxZ8eCDDx708a+PPfZYfPDBBzF06NAYMWJE4sociu44Mnjw4Ljzzjtj+vTpMXHixLjqqquiZ8+e\nsXr16nj99ddj9OjRUV9fnz2TNuy/S7Pf/l/BvGXLlnjqqacOfP3iiy+Oc88995jv48jmzp0bzc3N\nMXTo0HjhhRdaPe/KK6886D+WOf5MmzYt1q9fH6tXr45vfOMbMWHChOjZs2ds3LgxVq5cGdXV1XH/\n/fd7Azx0sLvvvjs2bNgQDQ0N8Ze//CXGjRsX3bp1izVr1sS6deuiX79+MWfOnOyZKQpF73g47rz8\n8suxYMGC2LhxYzQ1NcWgQYPiyiuvjClTpvjopuPc2rVr47rrrjviL3uZOXNmfOtb3zpGqyjFJZdc\nEh999NERz1u0aFFceOGFx2AR5di7d28sXLgwli9fHn/9619j79698fnPfz4uvPDCuOGGGw777DHH\nv7Vr18b1118fEydOjBkzZmTP4Sjs3LkzfvGLX8RLL70U77//fhQKhTjzzDPjX/7lX2LKlCnRt2/f\n7IkphDgAACTw8YUAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBA\niAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAACYT4caix\nsTGGDBkSQ4YMicbGxuw5tJPX8cTnNewcvI6dg9fxxOc1PJQQBwCABEIcAAASCHEAAEggxAEAIIEQ\nBwCABEIcAAASFIrFYjF7RKlGjx4dTU1N0b9//+wpHaKlpSU++uijiIgYOHBgVFVVJS+iPbyOJz6v\nYefgdewcvI4nvpPlNdy2bVuceuqp8dprrx3x3BMyxC+44IL47LPPomfPntlTKNPu3buzJ1ABffr0\nyZ5AmT799NPsCVTAvn37sidQAaecckr2BMqwc+fO6NKlS2zatOmI51Yfgz0V169fv/jkk0/i3/7t\n37KnUKZf/vKX2ROogPvuuy97AmVavXp19gQqYNeuXdkTqIBzzz03ewJlmDNnzlGf6xlxAABIIMQB\nACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghx\nAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARC\nHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCB\nEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABI\nIMQBACBBdXu/8fe//30888wz8cYbb8Snn34aX/jCF+JrX/ta3HTTTdGjR49KbgQAgE6nXSH+85//\nPB599NHo379/TJo0KXr37h2vvfZazJ8/P/74xz/G4sWLo3v37pXeCgAAnUbJj6Zs3rw5fvazn8WA\nAQNi6dKl8aMf/ShuvvnmePLJJ+Omm26KLVu2xLx58zpiKwAAdBolh/hzzz0XxWIxbrjhhujTp89B\nx6ZOnRpdu3aNX/3qV9HU1FSxkQAA0NmUHOKvvvpqRESMHz/+kGPdunWL2tra2L17d2zYsKH8dQAA\n0EmVFOLNzc3x7rvvRqFQiEGDBh32nLPPPjsi/vEICwAAcHglhfgnn3wSLS0t0bVr16ipqTnsOb16\n9YqIiJ07d5a/DgAAOqmSPjXl008/jYiIU045pdVzampqolgsHji3vRobG1s91tLSUta1AQCgo+zb\nt6/Nlh0wYEBElBjiXbt2jYiIzz77rNVzmpqaolAoHDi3vSZMmNDm8d69e5d1fQAA6Ag7d+5ss2X3\nP8Jd0qMpPXr0iOrq6tizZ0/s3bv3sOf87W9/i4g45BNVAACA/1PSHfGqqqr44he/GG+//XZs3bo1\nhgwZcsg577zzTkREnH/++WUNW7VqVavH6urqYs+ePWVdHwAAOkKvXr3i17/+9RHPK/k3a44fPz62\nbNkSK1euPCTEt2/fHhs3bozevXvH8OHDS730QfY/O3M4VVVVZV0bAAA6SpcuXdps2QPnlXrhurq6\nOOWUU2LRokXxX//1Xwcde/jhh6OlpSWuvfbaqK4uufEBAOCkUXItDx48OO68886YPn16TJw4Ma66\n6qro2bNnrF69Ol5//fUYPXp01NfXd8RWAADoNNp12/raa6+NQYMGxYIFC+KFF16IpqamGDRoUNx6\n660xZcqUVj9jHAAA+Id2Pz9y0UUXxUUXXVTJLQAAcNIo+RlxAACgfEIcAAASCHEAAEggxAEAIIEQ\nBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEgg\nxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAAS\nCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCA\nBEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEA\nIIEQBwCABNXZA9qrubk53nvvvewZlOmvf/1r9gQqYPHixdkTKNOsWbOyJ1ABd999d/YEKuDdd9/N\nnkAZmpubj/pcd8QBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCB\nEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABI\nIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAA\nEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcA\ngARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIUFaIb926Nb797W/H0KFD46677qrUJgAA\n6PSq2/uNTz/9dMyZMyeam5ujUChUchMAAHR67bojfvvtt8eMGTPiK1/5Stxxxx1RLBYrvQsAADq1\ndoX4tm3b4qc//WnMmTMnevToUelNAADQ6bXr0ZTHH388unfvXuktAABw0mjXHXERDgAA5fHxhQAA\nkKDdn5rS0RobG1s91tLScgyXAADA0du3b1+bLTtgwICIOI5DfMKECW0e93gMAADHo927d7fZsps3\nb44Ij6YAAECK4/aO+KpVq1o9VldXF//zP/9zDNcAAMDR6datWyxbtuyI5x23Ib7/2ZnDqaqqOoZL\nAADg6HXp0qXNlj1w3jHYAgAA/H9KviPe2Nh40K32jRs3RkTEli1b4qmnnjrw9YsvvjjOPffcCkwE\nAIDOp+QQf++99+Khhx6KQqFw4GuFQiE2bdoUmzZtOvC1vn37CnEAAGhFySE+ZsyYePPNNztiCwAA\nnDQ8Iw4AAAmEOAAAJBDiAACQQIgDAEACIQ4AAAmEOAAAJBDiAACQQIgDAEACIQ4AAAmEOAAAJBDi\nAACQQIgDAEACIQ4AAAmEOAAAJBDiAACQQIgDAEACIQ4AAAmEOAAAJBDiAACQQIgDAEACIQ4AAAmE\nOAAAJBDiAACQQIgDAEACIQ4AAAmEOAAAJBDiAACQQIgDAEACIQ4AAAmEOAAAJBDiAACQQIgDAEAC\nIQ4AAAmEOAAAJBDiAACQQIgDAEACIQ4AAAmEOAAAJBDiAACQQIgDAEACIQ4AAAmEOAAAJBDiAACQ\nQIgDAEACIQ4AAAmEOAAAJBDiAACQQIgDAEACIQ4AAAmqswe0V01NTfzTP/1T9gzKNHz48OwJVMCI\nESOyJ1Cm//iP/8ieQAU8+OCD2ROogN/+9rfZEyhDTU3NUZ/rjjgAACQQ4gAAkECIAwBAAiEOAAAJ\nhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBA\nAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAA\nkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgA\nACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEO\nAAAJqkv9hmKxGEuWLIkXXngh3nrrrWhqaop+/frFmDFjor6+Ps4555yO2AkAAJ1KSSFeLBbjlltu\niRdffDH69esXkyZNip49e8b69etj6dKl8bvf/S4WLlwYF1xwQUftBQCATqGkEG9oaIgXX3wxhg4d\nGosXL47TTjvtwLFHHnkkHn/88Zg9e3Y8/fTTFR8KAACdSUnPiP/5z3+Obt26RX19/UERHhHxne98\nJyIi1q9fX7l1AADQSZUU4g888ECsW7currjiikOOnX766RHxj8dXisViZdYBAEAnVbFPTXnppZci\nImLMmDFRKBQqdVkAAOiUSv7UlMP58MMP46GHHoqqqqqYNm1aJS4ZjY2NrR5raWmpyM8AAIBKa2lp\nabNlBwwYEBEVCPG333476uvrY/v27XHvvfdW7BNTJkyY0Obxvn37VuTnAABAJe3YsaPNlt28eXNE\nlPloypo1a6Kuri62bdsW999/f3z3u98t53IAAHDSaPcd8YULF8ZDDz0U3bt3j/nz58fYsWMruStW\nrVrV6rG6urpoamqq6M8DAIBK6N27dyxduvSI57UrxJ944omYN29eDB48OObPnx+DBw9uz2XatP/Z\nmcOpqqqq+M8DAIBKqKqqarNl9ys5xJ999tmYN29eDBs2LBYsWBC9evVq10AAADiZlfSM+Jtvvhkz\nZ86MgQMHxlNPPSXCAQCgnUq6Iz537txobm6OoUOHxgsvvNDqeVdeeWWcccYZZY8DAIDOqqQQf/vt\nt6NQKMTKlStj5cqVrZ5XW1srxAEAoA0lhfj+354JAACUp2K/4h4AADh6QhwAABIIcQAASCDEAQAg\ngRAHAIAEQhwAABIIcQAASCDEAQAggRAHAIAEQhwAABIIcQAASCDEAQAggRAHAIAEQhwAABIIcQAA\nSCDEAQAggRAHAIAEQhwAABIIcQAASCDEAQAggRAHAIAEQhwAABIIcQAASCDEAQAggRAHAIAEQhwA\nABIIcQAASCDEAQAggRAHAIAEQhwAABIIcQAASCDEAQAggRAHAIAEQhwAABIIcQAASCDEAQAggRAH\nAIAEQhwAABIIcQAASCDEAQAggRAHAIAEQhwAABIIcQAASCDEAQAggRAHAIAEQhwAABIIcQAASCDE\nAQAggRAHAIAE1dkD2qu5uTm2bt2aPYMynX322dkTqIDp06dnT6BMjz76aPYEKmDEiBHZE6iAr3zl\nK9kTKMOePXuO+lx3xAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEA\nIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEA\nAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIc\nAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQ\nBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASVLfnm/bs2RNLliyJ3/zmN/Hee+/Frl274nOf\n+1yMHDkyJk+eHKNGjar0TgAA6FRKDvFdu3bF97///diwYUMMGzYsrr766jj11FPjjTfeiBUrVsTy\n5ctj9uzZ8fWvf70j9gIAQKdQcog/+uijsXHjxrjmmmviJz/5yUHHlixZEvfcc0/MnTtXiAMAQBtK\nfka8trY26uvr4wc/+MEhxy6//PKIiGhsbIx9+/aVvw4AADqpku+If/Ob32z12ObNmyMi4vzzz48u\nXbwPFAAAWtOuN2vu98knn8SOHTti586d8eqrr8YTTzwRAwcOjOnTp1dqHwAAdEplhfjzzz8fM2fO\n/MeFqqvjsssui3vvvTd69+5dkXEAANBZlRXil1xySZx55pmxY8eOeOWVV2LFihWxfv36eOSRR6K2\ntrasYY2Nja0ea2lpKevaAADQUYrFYpstO2DAgIgoM8TPOuusOOussyIi4uqrr466urq47rrrYtq0\nabFs2bKoqalp97UnTJjQ5vGePXu2+9oAANBR9uzZ02bL7n9fZUXfUTl69Oi48MIL44MPPoi1a9dW\n8tIAANCplHRHvLm5OZYvXx47duyIyZMnH/acPn36RETbj5YcjVWrVrV6rK6uLnbv3l3W9QEAoCOc\ndtppsXz58iOeV1KIV1dXx6xZs2L79u3x5S9/Oc4555xDznnnnXciIqJ///6lXPoQ+5+dOZyqqqqy\nrg0AAB2lUCi02bL7lfxoymWXXRbFYjFmzZoVe/fuPejY0qVL46233orevXvHmDFjSr00AACcNEp+\ns+a0adNi/fr1sXr16vjGN74REyZMiJ49e8bGjRtj5cqVUV1dHffff3907dq1I/YCAECnUHKId+/e\nPZ577rlYuHBhLF++PJ5//vnYu3dvfP7zn4+rrroqbrjhhhg2bFhHbAUAgE6jXR9fWFNTEzfddFPc\ndNNNld4DAAAnhYp+fCEAAHB0hDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEO\nAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECI\nAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ\n4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJ\nhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACSozh7QXs3NzfHB\nBx9kz6BMDz30UPYEKuDMM8/MnkCZ/vu//zt7AhWwa9eu7AlUwNixY7MnUIbVq1cf9bnuiAMAQAIh\nDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBA\niAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAk\nEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAA\nCYQ4AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMA\nQAIhDgAACYQ4AAAkKDvEW1pa4pprromhQ4fGXXfdVYlNAADQ6ZUd4o899lhs2LAhCoVCJfYAAMBJ\noawQf/311+PJJ5+M4cOHR7FYrNQmAADo9Nod4rt374477rgjzjjjjPjhD39YyU0AANDpVbf3G6dP\nnx4ffvhhLFiwwGMpAABQonbdEV+xYkU0NDTEddddF1/60pcqvQkAADq9kkP8448/jh//+Mdx3nnn\nxW233dYRmwAAoNMr+dGUO++8M/7+97/H7Nmzo6ampiM2RUREY2Njq8daWlo67OcCAEA59u3b12bL\nDhgwICJKDPGFCxfGn/70p5g2bVoMHTq0vIVHMGHChDaPn3766R368wEAoD127tzZZstu3rw5Ikp4\nNGXLli0xd+7cGDVqVNx4440HHfPRhQAAUJqjviO+YsWKaGpqinXr1sWwYcMOOV4oFKKhoSEaGhpi\nzJgxsWjRorKGrVq1qtVjdXV1sXPnzrKuDwAAHaFXr17x61//+ojnHXWIjxw5MqZMmXLYY42NjbFs\n2bI477wjazWIAAAG7klEQVTz4qKLLopBgwYd/dJW7H925nCqqqrKvj4AAHSELl26tNmy+x11iI8d\nOzbGjh172GNr166NZcuWxfDhw+OOO+44+pUAAHCSKutX3AMAAO1TsRAvFAp+wyYAAByldv+K+//X\nmDFj4o033qjEpQAA4KTg0RQAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAAS\nCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCA\nBEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEA\nIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEA\nAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEhQnT2gvXr27Bk333xz\n9gzKNGDAgOwJVMCoUaOyJ1CmPn36ZE+gAjZv3pw9gQqYPHly9gTKsHv37qM+1x1xAABIIMQBACCB\nEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABI\nIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAA\nEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcA\ngARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQB\nACCBEAcAgARCHAAAElSX+g0NDQ1x1113tXlOXV1d3Hfffe3dBAAAnV7JIb7fuHHjYvz48Yc9NnTo\n0HYPAgCAk0G7Q3zEiBHxve99r5JbAADgpOEZcQAASFB2iO/duze2bdsWe/bsqcQeAAA4KbT70ZRN\nmzbF9ddfH+vWrYvm5uYoFAoxfPjwuOWWW2LChAmV3AgAAJ1Ou0N85cqV8dWvfjUeeOCB6Nq1a6xZ\nsyYaGhpi6tSpMWPGjJg4cWJZwxobG1s91tLSUta1AQCgoxSLxTZbdsCAARHRjhAfNmxY3HrrrVFb\nWxvjxo078PUrrrgixo8fH9OmTYsHH3wwLr300ujRo0c7pv/Dke6q7/8HAACA48lnn33WZstu3rw5\nItrxjPiQIUNi6tSpB0X4fpdffnnU1tbG7t274+WXXy710gAAcNJo96MprTn//PNj48aN8f7775d1\nnVWrVrV6rK6uLorFYlnXBwCAjnDKKafEH/7whyOeV/EQ3//89mmnnVbWddp69KSqqiqam5vLuj4A\nAHSEQqFwVI9Rl/xoym233RaTJk2KXbt2HXKsubk5XnnllYiIGD58eKmXBgCAk0bJIV4oFGLTpk0x\na9asQx4Peeyxx+KDDz6IIUOGxIgRIyo2EgAAOpuSH025++67Y8OGDdHQ0BB/+ctfYty4cdGtW7dY\ns2ZNrFu3Lvr16xdz5szpiK0AANBplBziffv2jV/+8pfxi1/8Il566aV45plnolAoxJlnnhk33nhj\nTJkyJfr27dsRWwEAoNNo15s1e/XqFbfffnvcfvvtld4DAAAnhZKfEQcAAMonxAEAIIEQBwCABEIc\nAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQ\nBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEgg\nxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAAS\nCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCA\nBEIcAAASFIrFYjF7RKkuuOCCaG5ujn79+mVPoUy7d+/OnkAFnHrqqdkTKFOXLu7LdAY1NTXZE6iA\nbdu2ZU+gDHv37o1CoRBvvvnmEc+tPgZ7Kq6mpiaKxWJUV5+Q84+opaUlPvroo4iIGDhwYFRVVSUv\n6ji9evXKntBhTqbXsbPyGnYOXsfO4WR6Hfv37589oUOcLK/hxx9/fNT/UXxC3hHv7BobG2PChAkR\nEbFq1aoYMGBA8iLaw+t44vMadg5ex87B63ji8xoeyt9FAgBAAiEOAAAJhDgAACQQ4gAAkECIAwBA\nAiEOAAAJfHwhAAAkcEccAAAS/C/LxpUW1A+AyQAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f3dd5062fd0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.matshow(TRANS_LOOKUP.as_array())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{0: 'O', 1: 'U', 2: 'B', 3: 'E', 4: 'I', 5: '_S_'}"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "vt.i2w"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(6,)"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sorted_ids = np.array([vt.w2i[t] for t in sorted(vt.i2w.values(), key=lambda x: x[2:] + x[:2])])\n",
    "sorted_ids.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(6, 6)"
      ]
     },
     "execution_count": 30,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "TRANS_LOOKUP.as_array()[sorted_ids][:, sorted_ids].shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x7f3c80a817d0>"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\nDgAACQrFYrGYPaJUo0aNivr6+ujXr1/2lDbR2NgYn332WUREDBgwICoqKpIX0RJex5Of17Bj8Dp2\nDF7Hk9+p8hpu27YtTj/99Hj33XePee5JGeIXXnhh7N+/P3r16pU9hVY6Cf/x4yi6d++ePYFW+vLL\nL7MnUAZ79uzJnkAZ+DP15LZjx47o1KlTrF+//pjnVp6APWXXt2/f2LNnT0yePDl7Cq3U2NiYPYEy\nuOmmm7In0Er/8R//kT2BMvi3f/u37AmUgT9TT26PPfbYcZ/rGXEAAEggxAEAIIEQBwCABEIcAAAS\nCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCA\nBEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEA\nIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEA\nAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIEFlS7/xT3/6\nU7z00kuxYcOG+Oqrr+LrX/96fPe7342JEydGjx49yrkRAAA6nBaF+G9+85t4+umno1+/fnH99ddH\n796949133405c+bEn//853jllVeie/fu5d4KAAAdRsmPpmzcuDGeffbZ6N+/fyxatCh+/vOfx09+\n8pN44YUXYuLEibFp06aYPXt2W2wFAIAOo+QQf/XVV6NYLMbtt98eZ5555mHHJk2aFF26dInf/e53\nUV9fX7aRAADQ0ZQc4u+8805ERIwdO/aIY926dYuqqqrYs2dPrF27tvXrAACggyopxBsaGuLjjz+O\nQqEQAwcOPOo55513XkT84xEWAADg6EoK8S+++CIaGxujS5cu0blz56Oe06tXr4iI2LVrV+vXAQBA\nB1XSp6Z89dVXERFx2mmnNXlO586do1gsHjq3perq6po81tjY2KprAwBAW2lsbGy2Zfv37x8RJYZ4\nly5dIiJi//79TZ5TX18fhULh0LktNW7cuGaP//9vFAUAgPZg586dzbbswUe4S3o0pUePHlFZWRl7\n9+6Nffv2HfWcHTt2RIRQBgCA5pR0R7yioiK+8Y1vxObNm+Ojjz6KwYMHH3HOhx9+GBERQ4cObdWw\n5cuXN3msurq61Y++AABAW+jdu3csWrTomOeV/Js1x44dG5s2bYply5YdEeLbt2+PdevWRe/evWP4\n8OGlXvowB5+dOZqKiopWXRsAANpKRUVFsy17UMmfI15dXR2nnXZaLFiwIP77v//7sGNPPvlkNDY2\nxs033xyVlSU3PgAAnDJKruVBgwbF/fffH1OmTInx48fHtddeGz179owVK1bEe++9F6NGjYqampq2\n2AoAAB1Gi25b33zzzTFw4MCYN29evP7661FfXx8DBw6Mu+++OyZMmNDkZ4wDAAD/0OLnRy699NK4\n9NJLy7kFAABOGSU/Iw4AALSeEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQB\nACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghx\nAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARC\nHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACCB\nEAcAgARCHAAAEghxAABIIMQBACCBEAcAgARCHAAAEghxAABIIMQBACBBZfaAltqxY0dMmTIlewat\n9PTTT2dPoAxGjBiRPYFWuuOOO7InUAbnnXde9gTK4I033sieQCvs3bv3uM91RxwAABIIcQAASCDE\nAQAggRAHAIAEQhwAABIIcQAASCDEAQAggRAHAIAEQhwAABIIcQAASCDEAQAggRAHAIAEQhwAABII\ncQAASCDEAQAggRAHAIAEQhwAABIIcQAASCDEAQAggRAHAIAEQhwAABIIcQAASCDEAQAggRAHAIAE\nQhwAABIIcQAASCDEAQAggRAHAIAEQhwAABIIcQAASCDEAQAggRAHAIAEQhwAABIIcQAASCDEAQAg\ngRAHAIAEQhwAABIIcQAASCDEAQAggRAHAIAEQhwAABIIcQAASCDEAQAggRAHAIAEQhwAABIIcQAA\nSCDEAQAggRAHAIAErQrxjz76KH74wx/GkCFD4oEHHijXJgAA6PAqW/qNL774YsycOTMaGhqiUCiU\ncxMAAHR4Lbojfu+998YTTzwR//Iv/xL33XdfFIvFcu8CAIAOrUUhvm3btvjVr34VM2fOjB49epR7\nEwAAdHgtejTlueeei+7du5d7CwAAnDJadEdchAMAQOv4+EIAAEjQ4k9NaWt1dXVNHmtsbDyBSwAA\n4PgVi8VmW7Z///4R0Y5DfNy4cdkTAACgZHv37m22ZTdu3BgRHk0BAIAU7faO+PLly5s8Vl1dHZ99\n9tkJXAMAAMfnjDPOiCVLlhzzvHYb4gefnTmaioqKE7gEAACOX6FQaLZlD/JoCgAAJCj5jnhdXV0s\nXrz40P9et25dRERs2rQp5s6de+jrl112WXzzm98sw0QAAOh4Sg7xLVu2xPTp06NQKBz6WqFQiPXr\n18f69esPfa1Pnz5CHAAAmlByiI8ePTref//9ttgCAACnDM+IAwBAAiEOAAAJhDgAACQQ4gAAkECI\nAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ\n4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJ\nhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBA\nAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAAkECIAwBAAiEOAAAJhDgAACQQ4gAA\nkECIAwBAgsrsAS114MCB2LFjR/YMWul//ud/sidQBrt3786eQCtt3bo1ewJlMH369OwJlMFrr72W\nPYFWWLFixXGf6444AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAk\nEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAA\nCYQ4AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMA\nQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAACYQ4AAAkEOIA\nAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBAiAMAQAIhDgAACSpL/YZisRgLFy6M119/PT744IOor6+P\nvn37xujRo6OmpibOP//8ttgJAAAdSkkhXiwW46677oo33ngj+vbtG9dff3307Nkz1qxZE4sWLYo/\n/vGPMX/+/Ljwwgvbai8AAHQIJYV4bW1tvPHGGzFkyJB45ZVX4owzzjh07KmnnornnnsuZsyYES++\n+GLZhwIAQEdS0jPif/3rX6Nbt25RU1NzWIRHRPzoRz+KiIg1a9aUbx0AAHRQJYX4o48+GqtXr46r\nr776iGNdu3aNiH88vlIsFsuzDgAAOqiyfWrKm2++GRERo0ePjkKhUK7LAgBAh1Typ6YczaeffhrT\np0+PioqKmDx5cjkuGXV1dU0ea2xsLMvPAACAcjtw4ECzLdu/f/+IKEOIb968OWpqamL79u3x8MMP\nl+0TU8aNG1eW6wAAwIm0a9euZlt248aNEdHKR1NWrlwZ1dXVsW3btnjkkUfipptuas3lAADglNHi\nO+Lz58+P6dOnR/fu3WPOnDlxySWXlHNXLF++vMlj1dXVsXXr1rL+PAAAKIdevXrF73//+2Oe16IQ\nf/7552P27NkxaNCgmDNnTgwaNKgll2nWwWdnjqaioqLsPw8AAMqhU6dOzbbsQSWH+MsvvxyzZ8+O\nYcOGxbx586JXr14tGggAAKeykp4Rf//992Pq1KkxYMCAmDt3rggHAIAWKumO+KxZs6KhoSGGDBkS\nr7/+epPnXXPNNXH22We3ehwAAHRUJYX45s2bo1AoxLJly2LZsmVNnldVVSXEAQCgGSWF+MHfngkA\nALRO2X7FPQAAcPyEOAAAJBDiAACQQIgDAEACIQ4AAAmEOAAAJBDiAACQQIgDAEACIQ4AAAmEOAAA\nJBDiAACQQIgDAEACIQ4AAAmEOAAAJBDiAACQQIgDAEACIQ4AAAmEOAAAJBDiAACQQIgDAEACIQ4A\nAAmEOAAAJBDiAACQQIgDAEACIQ4AAAmEOAAAJBDiAACQQIgDAEACIQ4AAAmEOAAAJBDiAACQQIgD\nAEACIQ4AAAmEOAAAJBDiAACQQIgDAEACIQ4AAAmEOAAAJBDiAACQQIgDAEACIQ4AAAmEOAAAJBDi\nAACQQIgDAEACIQ4AAAmEOAAAJBDiAACQQIgDAEACIQ4AAAkqswe0VP/+/ePZZ5/NnkErrVixInsC\nZXDnnXdmT6CVBg0alD2BMrjuuuuyJ1AGjY2N2RM4QdwRBwCABEIcAAASCHEAAEggxAEAIIEQBwCA\nBEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEA\nIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEA\nAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIc\nAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEggxAEAIIEQBwCABEIcAAASCHEAAEhQ2ZJv2rt3\nbyxcuDD+8Ic/xJYtW2L37t3xta99LUaOHBm33HJLXHTRReXeCQAAHUrJIb579+748Y9/HGvXro1h\nw4bFDTfcEKeffnps2LAhli5dGkuWLIkZM2bE9773vbbYCwAAHULJIf7000/HunXr4sYbb4zHHnvs\nsGMLFy6Mhx56KGbNmiXEAQCgGSU/I15VVRU1NTXx05/+9IhjV111VURE1NXVxYEDB1q/DgAAOqiS\n74j/4Ac/aPLYxo0bIyJi6NCh0amT94ECAEBTWvRmzYO++OKL2LlzZ+zatSveeeedeP7552PAgAEx\nZcqUcu0DAIAOqVUh/tprr8XUqVP/caHKyrjyyivj4Ycfjt69e5dlHAAAdFStCvHLL788zjnnnNi5\nc2e8/fbbsXTp0lizZk089dRTUVVV1aphdXV1TR5rbGxs1bUBAKCtHDhwoNmW7d+/f0S0MsTPPffc\nOPfccyMi4oYbbojq6uq49dZbY/LkybF48eLo3Llzi689bty4Zo/369evxdcGAIC2smvXrmZb9uD7\nKsv6jspRo0bFxRdfHFu3bo1Vq1aV89IAANChlHRHvKGhIZYsWRI7d+6MW2655ajnnHnmmRHR/KMl\nx2P58uVNHquurvZ4CgAA7VKvXr3i97///THPKynEKysrY9q0abF9+/b49re/Heeff/4R53z44YcR\n0fpHRw4+O3M0FRUVQhwAgHapU6dOzbbsofNKvfCVV14ZxWIxpk2bFvv27Tvs2KJFi+KDDz6I3r17\nx+jRo0u9NAAAnDJKfrPm5MmTY82aNbFixYr4/ve/H+PGjYuePXvGunXrYtmyZVFZWRmPPPJIdOnS\npS32AgBAh1ByiHfv3j1effXVmD9/fixZsiRee+212LdvX5x11llx7bXXxu233x7Dhg1ri60AANBh\ntOjjCzt37hwTJ06MiRMnlnsPAACcEsr68YUAAMDxEeIAAJBAiAMAQAIhDgAACYQ4AAAkEOIAAJBA\n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\nQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f3c6b4b6950>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.matshow(TRANS_LOOKUP.as_array()[sorted_ids][:, sorted_ids])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(6, 6)"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "TRANS_LOOKUP.shape()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "anaconda-cloud": {},
  "kernelspec": {
   "display_name": "Python [default]",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.12"
  },
  "widgets": {
   "state": {
    "0160c4fcc9594a0c8d94f5f3482a5a3e": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "05726b7fd8b8462a8f1b702e1454fb92": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "0582d6378991469281c9b6c562958bdf": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "09073f956bca4913b57acd89984bcf40": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "09505d4a03454e35a075e738b98bd499": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "0dc568d9008a4e2987c430f261a7cf78": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "284266d0aa8c4655a234514670413cfd": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "28ac6f1f2b1140abb133a3bf3b0a4dca": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "2c9c8491532448919c14d7ad2186667e": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "45a0c3a42d0f4f80a576d57cb18e3990": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "4b420fc5f23545b598c25658bf06a6fb": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "4df6ac78c0c749519358d083b429d54e": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "521e08e1e0a84891a91e6996fbc68e84": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "54fb433242c3412fa2d68389315c81da": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "56ecabbf6d5d40b4996c0773c000105c": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "5b748318a7944c45807f2b9f71d0884e": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "5c5354c1a1904009a7e0094d241ce971": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "6617ba0bcff94b6e902ec3601a4cf395": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "6967bfcd1f7c464ca007bf573ede595f": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "7d53569dfd674825b25003976c3b35fc": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "7dcd210dc3a044688691094112bc037a": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "835e43f1b8344f1d8a3dca52130cbcea": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "888490199073452fb12cb43974a49625": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "8a3bcc9e69654f2c94b2ca8a9d70a754": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "8d26cf9f5bab4aa5a35ecb099564abca": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "8d411500daf54b40be0a3661bea156d3": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "9296efef87074fbc9b34e5c5c5a59a0e": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "94cfffa2210745389ad3f5c915f3740f": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "967047292b394e7db9007d855522bb2e": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "995aafaffd5f4a11aaf5c34168cf311a": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "9e54895f1a7e4a9fa8eaaf77eac287d7": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "9ee9c7445a9e44b4935f1232339f3e55": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "9fbb02342a414686890a71f4f20d4dd5": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "a96c46b09bb340d09d2771fe737aded6": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "b0f9c12a285b4bc6a7ce95cc403af52f": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "b4cb6606c50346b2a3d8af17363b089c": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "c5c2188fa98e498db2ea18bfddcc0c72": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "c5dba4ea82804bbfbc26fcf040bd5e5f": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "c60c4b76ec73419a8fe350810e987a57": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "c80e14c219854d6682660c7ca4b3a8b8": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "d499cba1df674facb037168949c19291": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "d6830886f3374d4ebc4431a63a8f0a4f": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "d790d5e1edf847ec9ac9efab60a3646b": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "db99983281dc4ef0bfaab479a72ba6d8": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "e4982b2e04694330b8bf27eb59437a05": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    },
    "fbe8e68fd8434a9eb82dad4663c66361": {
     "views": [
      {
       "cell_index": 20
      }
     ]
    }
   },
   "version": "1.2.0"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
